﻿2026-06-07T23:26:20.8563787Z ##[group]Run ./traceable-reqs check --json
2026-06-07T23:26:20.8564092Z [36;1m./traceable-reqs check --json[0m
2026-06-07T23:26:20.8576399Z shell: /usr/bin/bash -e {0}
2026-06-07T23:26:20.8576628Z ##[endgroup]
2026-06-07T23:26:20.8794845Z {
2026-06-07T23:26:20.8795415Z   "schemaVersion": 1,
2026-06-07T23:26:20.8795751Z   "summary": {
2026-06-07T23:26:20.8796138Z     "requirementCount": 166,
2026-06-07T23:26:20.8796529Z     "completeCount": 166,
2026-06-07T23:26:20.8796896Z     "incompleteCount": 0,
2026-06-07T23:26:20.8797363Z     "findingCount": 0
2026-06-07T23:26:20.8797698Z   },
2026-06-07T23:26:20.8798010Z   "requirements": [
2026-06-07T23:26:20.8798327Z     {
2026-06-07T23:26:20.8798652Z       "id": "REQ-API-1",
2026-06-07T23:26:20.8799148Z       "title": "api prefix and adapter_name on every machinery invocation",
2026-06-07T23:26:20.8799711Z       "requiredStages": [
2026-06-07T23:26:20.8800063Z         "impl",
2026-06-07T23:26:20.8800364Z         "unit",
2026-06-07T23:26:20.8800684Z         "int"
2026-06-07T23:26:20.8801031Z       ],
2026-06-07T23:26:20.8801321Z       "stages": {
2026-06-07T23:26:20.8801631Z         "doc": {
2026-06-07T23:26:20.8801960Z           "complete": false,
2026-06-07T23:26:20.8802322Z           "evidence": []
2026-06-07T23:26:20.8802660Z         },
2026-06-07T23:26:20.8802956Z         "impl": {
2026-06-07T23:26:20.8803588Z           "complete": true,
2026-06-07T23:26:20.8804137Z           "evidence": [
2026-06-07T23:26:20.8804670Z             {
2026-06-07T23:26:20.8805189Z               "path": "crates/spt/src/api/mod.rs",
2026-06-07T23:26:20.8805880Z               "line": 15
2026-06-07T23:26:20.8806535Z             }
2026-06-07T23:26:20.8807113Z           ]
2026-06-07T23:26:20.8807541Z         },
2026-06-07T23:26:20.8822651Z         "int": {
2026-06-07T23:26:20.8822990Z           "complete": true,
2026-06-07T23:26:20.8823315Z           "evidence": [
2026-06-07T23:26:20.8823600Z             {
2026-06-07T23:26:20.8823901Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-07T23:26:20.8824278Z               "line": 13
2026-06-07T23:26:20.8824557Z             }
2026-06-07T23:26:20.8824798Z           ]
2026-06-07T23:26:20.8825033Z         },
2026-06-07T23:26:20.8825271Z         "unit": {
2026-06-07T23:26:20.8825547Z           "complete": true,
2026-06-07T23:26:20.8825843Z           "evidence": [
2026-06-07T23:26:20.8826105Z             {
2026-06-07T23:26:20.8826395Z               "path": "crates/spt/src/api/mod.rs",
2026-06-07T23:26:20.8826758Z               "line": 442
2026-06-07T23:26:20.8827124Z             },
2026-06-07T23:26:20.8827374Z             {
2026-06-07T23:26:20.8827655Z               "path": "crates/spt/src/api/mod.rs",
2026-06-07T23:26:20.8827994Z               "line": 448
2026-06-07T23:26:20.8828261Z             },
2026-06-07T23:26:20.8828500Z             {
2026-06-07T23:26:20.8828778Z               "path": "crates/spt/src/api/mod.rs",
2026-06-07T23:26:20.8829135Z               "line": 515
2026-06-07T23:26:20.8829402Z             }
2026-06-07T23:26:20.8829647Z           ]
2026-06-07T23:26:20.8829894Z         }
2026-06-07T23:26:20.8830133Z       }
2026-06-07T23:26:20.8830366Z     },
2026-06-07T23:26:20.8830608Z     {
2026-06-07T23:26:20.8830856Z       "id": "REQ-API-2",
2026-06-07T23:26:20.8831311Z       "title": "The api subcommand surface (bind/listen/poll/state/worker/boundary/...)",
2026-06-07T23:26:20.8831815Z       "requiredStages": [
2026-06-07T23:26:20.8832110Z         "impl",
2026-06-07T23:26:20.8832374Z         "unit",
2026-06-07T23:26:20.8832625Z         "int"
2026-06-07T23:26:20.8832868Z       ],
2026-06-07T23:26:20.8833111Z       "stages": {
2026-06-07T23:26:20.8833365Z         "doc": {
2026-06-07T23:26:20.8833627Z           "complete": false,
2026-06-07T23:26:20.8833932Z           "evidence": []
2026-06-07T23:26:20.8834218Z         },
2026-06-07T23:26:20.8834466Z         "impl": {
2026-06-07T23:26:20.8834746Z           "complete": true,
2026-06-07T23:26:20.8835022Z           "evidence": [
2026-06-07T23:26:20.8835292Z             {
2026-06-07T23:26:20.8835869Z               "path": "crates/spt-store/src/history.rs",
2026-06-07T23:26:20.8836240Z               "line": 15
2026-06-07T23:26:20.8836513Z             },
2026-06-07T23:26:20.8836761Z             {
2026-06-07T23:26:20.8837198Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-07T23:26:20.8837727Z               "line": 20
2026-06-07T23:26:20.8837996Z             },
2026-06-07T23:26:20.8838244Z             {
2026-06-07T23:26:20.8838540Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-07T23:26:20.8838907Z               "line": 139
2026-06-07T23:26:20.8839188Z             },
2026-06-07T23:26:20.8839427Z             {
2026-06-07T23:26:20.8839723Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.8840098Z               "line": 21
2026-06-07T23:26:20.8840373Z             },
2026-06-07T23:26:20.8840626Z             {
2026-06-07T23:26:20.8840906Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.8841270Z               "line": 38
2026-06-07T23:26:20.8841561Z             },
2026-06-07T23:26:20.8841807Z             {
2026-06-07T23:26:20.8842094Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.8842471Z               "line": 190
2026-06-07T23:26:20.8842766Z             },
2026-06-07T23:26:20.8843023Z             {
2026-06-07T23:26:20.8843314Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.8843694Z               "line": 232
2026-06-07T23:26:20.8843995Z             },
2026-06-07T23:26:20.8844177Z             {
2026-06-07T23:26:20.8844463Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.8844840Z               "line": 262
2026-06-07T23:26:20.8845112Z             },
2026-06-07T23:26:20.8845350Z             {
2026-06-07T23:26:20.8845634Z               "path": "crates/spt/src/api/worker.rs",
2026-06-07T23:26:20.8846405Z               "line": 17
2026-06-07T23:26:20.8846673Z             },
2026-06-07T23:26:20.8846915Z             {
2026-06-07T23:26:20.8847287Z               "path": "crates/spt/src/api/worker.rs",
2026-06-07T23:26:20.8847641Z               "line": 30
2026-06-07T23:26:20.8847917Z             },
2026-06-07T23:26:20.8848168Z             {
2026-06-07T23:26:20.8848452Z               "path": "crates/spt/src/api/worker.rs",
2026-06-07T23:26:20.8848809Z               "line": 63
2026-06-07T23:26:20.8849081Z             },
2026-06-07T23:26:20.8849334Z             {
2026-06-07T23:26:20.8849625Z               "path": "crates/spt/src/api/worker.rs",
2026-06-07T23:26:20.8849996Z               "line": 76
2026-06-07T23:26:20.8850269Z             }
2026-06-07T23:26:20.8850517Z           ]
2026-06-07T23:26:20.8850758Z         },
2026-06-07T23:26:20.8851014Z         "int": {
2026-06-07T23:26:20.8851286Z           "complete": true,
2026-06-07T23:26:20.8851529Z           "evidence": [
2026-06-07T23:26:20.8851723Z             {
2026-06-07T23:26:20.8851934Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-07T23:26:20.8852177Z               "line": 14
2026-06-07T23:26:20.8852367Z             },
2026-06-07T23:26:20.8852539Z             {
2026-06-07T23:26:20.8852736Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-07T23:26:20.8852983Z               "line": 183
2026-06-07T23:26:20.8853174Z             }
2026-06-07T23:26:20.8853341Z           ]
2026-06-07T23:26:20.8853502Z         },
2026-06-07T23:26:20.8853654Z         "unit": {
2026-06-07T23:26:20.8853836Z           "complete": true,
2026-06-07T23:26:20.8854036Z           "evidence": [
2026-06-07T23:26:20.8854217Z             {
2026-06-07T23:26:20.8854422Z               "path": "crates/spt-store/src/history.rs",
2026-06-07T23:26:20.8854666Z               "line": 42
2026-06-07T23:26:20.8854846Z             },
2026-06-07T23:26:20.8855019Z             {
2026-06-07T23:26:20.8855213Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-07T23:26:20.8855461Z               "line": 254
2026-06-07T23:26:20.8855644Z             },
2026-06-07T23:26:20.8855813Z             {
2026-06-07T23:26:20.8856286Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.8856540Z               "line": 438
2026-06-07T23:26:20.8856737Z             },
2026-06-07T23:26:20.8856908Z             {
2026-06-07T23:26:20.8857213Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.8857595Z               "line": 449
2026-06-07T23:26:20.8857794Z             },
2026-06-07T23:26:20.8857966Z             {
2026-06-07T23:26:20.8858157Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.8858448Z               "line": 581
2026-06-07T23:26:20.8858690Z             },
2026-06-07T23:26:20.8858861Z             {
2026-06-07T23:26:20.8859064Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.8859317Z               "line": 593
2026-06-07T23:26:20.8859509Z             },
2026-06-07T23:26:20.8859688Z             {
2026-06-07T23:26:20.8859885Z               "path": "crates/spt/src/api/worker.rs",
2026-06-07T23:26:20.8860128Z               "line": 141
2026-06-07T23:26:20.8860327Z             },
2026-06-07T23:26:20.8860501Z             {
2026-06-07T23:26:20.8860700Z               "path": "crates/spt/src/api/worker.rs",
2026-06-07T23:26:20.8860938Z               "line": 185
2026-06-07T23:26:20.8861130Z             }
2026-06-07T23:26:20.8861300Z           ]
2026-06-07T23:26:20.8861466Z         }
2026-06-07T23:26:20.8861631Z       }
2026-06-07T23:26:20.8861794Z     },
2026-06-07T23:26:20.8861960Z     {
2026-06-07T23:26:20.8862132Z       "id": "REQ-API-3",
2026-06-07T23:26:20.8862381Z       "title": "commune/signoff are file-drops, not commands",
2026-06-07T23:26:20.8862661Z       "requiredStages": [
2026-06-07T23:26:20.8862865Z         "impl",
2026-06-07T23:26:20.8863048Z         "unit",
2026-06-07T23:26:20.8863224Z         "int"
2026-06-07T23:26:20.8863481Z       ],
2026-06-07T23:26:20.8863725Z       "stages": {
2026-06-07T23:26:20.8863988Z         "doc": {
2026-06-07T23:26:20.8864252Z           "complete": false,
2026-06-07T23:26:20.8864558Z           "evidence": []
2026-06-07T23:26:20.8864824Z         },
2026-06-07T23:26:20.8865059Z         "impl": {
2026-06-07T23:26:20.8865335Z           "complete": true,
2026-06-07T23:26:20.8865645Z           "evidence": [
2026-06-07T23:26:20.8865927Z             {
2026-06-07T23:26:20.8866146Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-07T23:26:20.8866393Z               "line": 27
2026-06-07T23:26:20.8866585Z             },
2026-06-07T23:26:20.8866754Z             {
2026-06-07T23:26:20.8866954Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.8867535Z               "line": 372
2026-06-07T23:26:20.8867720Z             }
2026-06-07T23:26:20.8867878Z           ]
2026-06-07T23:26:20.8868044Z         },
2026-06-07T23:26:20.8868212Z         "int": {
2026-06-07T23:26:20.8868393Z           "complete": true,
2026-06-07T23:26:20.8868593Z           "evidence": [
2026-06-07T23:26:20.8868775Z             {
2026-06-07T23:26:20.8868970Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-07T23:26:20.8869222Z               "line": 257
2026-06-07T23:26:20.8869407Z             }
2026-06-07T23:26:20.8869567Z           ]
2026-06-07T23:26:20.8869734Z         },
2026-06-07T23:26:20.8869891Z         "unit": {
2026-06-07T23:26:20.8870088Z           "complete": true,
2026-06-07T23:26:20.8870287Z           "evidence": [
2026-06-07T23:26:20.8870473Z             {
2026-06-07T23:26:20.8881535Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-07T23:26:20.8881825Z               "line": 242
2026-06-07T23:26:20.8882039Z             },
2026-06-07T23:26:20.8882217Z             {
2026-06-07T23:26:20.8882434Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.8882699Z               "line": 622
2026-06-07T23:26:20.8882900Z             }
2026-06-07T23:26:20.8883075Z           ]
2026-06-07T23:26:20.8883247Z         }
2026-06-07T23:26:20.8883414Z       }
2026-06-07T23:26:20.8883576Z     },
2026-06-07T23:26:20.8883738Z     {
2026-06-07T23:26:20.8883910Z       "id": "REQ-ARCH-1",
2026-06-07T23:26:20.8884320Z       "title": "Many small acyclically-layered crates",
2026-06-07T23:26:20.8884586Z       "requiredStages": [
2026-06-07T23:26:20.8884788Z         "impl"
2026-06-07T23:26:20.8884958Z       ],
2026-06-07T23:26:20.8885239Z       "stages": {
2026-06-07T23:26:20.8885416Z         "doc": {
2026-06-07T23:26:20.8885601Z           "complete": false,
2026-06-07T23:26:20.8885812Z           "evidence": []
2026-06-07T23:26:20.8886002Z         },
2026-06-07T23:26:20.8886170Z         "impl": {
2026-06-07T23:26:20.8886356Z           "complete": true,
2026-06-07T23:26:20.8886555Z           "evidence": [
2026-06-07T23:26:20.8886737Z             {
2026-06-07T23:26:20.8886936Z               "path": "crates/spt-msg/src/lib.rs",
2026-06-07T23:26:20.8887276Z               "line": 16
2026-06-07T23:26:20.8887470Z             },
2026-06-07T23:26:20.8887634Z             {
2026-06-07T23:26:20.8887832Z               "path": "crates/spt-proto/src/lib.rs",
2026-06-07T23:26:20.8888083Z               "line": 12
2026-06-07T23:26:20.8888288Z             },
2026-06-07T23:26:20.8888454Z             {
2026-06-07T23:26:20.8888645Z               "path": "crates/spt-store/src/lib.rs",
2026-06-07T23:26:20.8888879Z               "line": 12
2026-06-07T23:26:20.8889074Z             }
2026-06-07T23:26:20.8889242Z           ]
2026-06-07T23:26:20.8889413Z         },
2026-06-07T23:26:20.8889581Z         "int": {
2026-06-07T23:26:20.8889766Z           "complete": false,
2026-06-07T23:26:20.8889966Z           "evidence": []
2026-06-07T23:26:20.8890153Z         },
2026-06-07T23:26:20.8890323Z         "unit": {
2026-06-07T23:26:20.8890504Z           "complete": false,
2026-06-07T23:26:20.8890711Z           "evidence": []
2026-06-07T23:26:20.8890903Z         }
2026-06-07T23:26:20.8891068Z       }
2026-06-07T23:26:20.8891246Z     },
2026-06-07T23:26:20.8891407Z     {
2026-06-07T23:26:20.8891584Z       "id": "REQ-ARCH-2",
2026-06-07T23:26:20.8891856Z       "title": "Public SDK surface is spt-proto, spt-runtime, spt-msg",
2026-06-07T23:26:20.8892157Z       "requiredStages": [
2026-06-07T23:26:20.8892341Z         "impl"
2026-06-07T23:26:20.8892514Z       ],
2026-06-07T23:26:20.8892676Z       "stages": {
2026-06-07T23:26:20.8892848Z         "doc": {
2026-06-07T23:26:20.8893046Z           "complete": false,
2026-06-07T23:26:20.8893245Z           "evidence": []
2026-06-07T23:26:20.8893441Z         },
2026-06-07T23:26:20.8893602Z         "impl": {
2026-06-07T23:26:20.8893784Z           "complete": true,
2026-06-07T23:26:20.8893979Z           "evidence": [
2026-06-07T23:26:20.8894160Z             {
2026-06-07T23:26:20.8894356Z               "path": "crates/spt-runtime/src/lib.rs",
2026-06-07T23:26:20.8894594Z               "line": 18
2026-06-07T23:26:20.8894780Z             }
2026-06-07T23:26:20.8894947Z           ]
2026-06-07T23:26:20.8895109Z         },
2026-06-07T23:26:20.8895276Z         "int": {
2026-06-07T23:26:20.8895456Z           "complete": false,
2026-06-07T23:26:20.8895654Z           "evidence": []
2026-06-07T23:26:20.8895842Z         },
2026-06-07T23:26:20.8896005Z         "unit": {
2026-06-07T23:26:20.8896190Z           "complete": false,
2026-06-07T23:26:20.8896392Z           "evidence": []
2026-06-07T23:26:20.8896572Z         }
2026-06-07T23:26:20.8896744Z       }
2026-06-07T23:26:20.8896901Z     },
2026-06-07T23:26:20.8897129Z     {
2026-06-07T23:26:20.8913578Z       "id": "REQ-ARCH-3",
2026-06-07T23:26:20.8913963Z       "title": "Wire-protocol version independent of crate semver, N-1 compat window",
2026-06-07T23:26:20.8914322Z       "requiredStages": [
2026-06-07T23:26:20.8914522Z         "impl",
2026-06-07T23:26:20.8914699Z         "unit"
2026-06-07T23:26:20.8914866Z       ],
2026-06-07T23:26:20.8915028Z       "stages": {
2026-06-07T23:26:20.8915204Z         "doc": {
2026-06-07T23:26:20.8915380Z           "complete": false,
2026-06-07T23:26:20.8915581Z           "evidence": []
2026-06-07T23:26:20.8915762Z         },
2026-06-07T23:26:20.8915929Z         "impl": {
2026-06-07T23:26:20.8916111Z           "complete": true,
2026-06-07T23:26:20.8916468Z           "evidence": [
2026-06-07T23:26:20.8916639Z             {
2026-06-07T23:26:20.8916845Z               "path": "crates/spt-proto/src/version.rs",
2026-06-07T23:26:20.8917163Z               "line": 34
2026-06-07T23:26:20.8917455Z             },
2026-06-07T23:26:20.8917615Z             {
2026-06-07T23:26:20.8917807Z               "path": "crates/spt-proto/src/version.rs",
2026-06-07T23:26:20.8918050Z               "line": 41
2026-06-07T23:26:20.8918226Z             }
2026-06-07T23:26:20.8918384Z           ]
2026-06-07T23:26:20.8918536Z         },
2026-06-07T23:26:20.8918694Z         "int": {
2026-06-07T23:26:20.8918870Z           "complete": false,
2026-06-07T23:26:20.8919076Z           "evidence": []
2026-06-07T23:26:20.8919261Z         },
2026-06-07T23:26:20.8919414Z         "unit": {
2026-06-07T23:26:20.8919598Z           "complete": true,
2026-06-07T23:26:20.8919796Z           "evidence": [
2026-06-07T23:26:20.8919978Z             {
2026-06-07T23:26:20.8920177Z               "path": "crates/spt-proto/src/version.rs",
2026-06-07T23:26:20.8920421Z               "line": 51
2026-06-07T23:26:20.8920608Z             },
2026-06-07T23:26:20.8920778Z             {
2026-06-07T23:26:20.8920975Z               "path": "crates/spt-proto/src/version.rs",
2026-06-07T23:26:20.8921218Z               "line": 71
2026-06-07T23:26:20.8921403Z             },
2026-06-07T23:26:20.8921576Z             {
2026-06-07T23:26:20.8921770Z               "path": "crates/spt-proto/src/version.rs",
2026-06-07T23:26:20.8922017Z               "line": 83
2026-06-07T23:26:20.8922208Z             }
2026-06-07T23:26:20.8922382Z           ]
2026-06-07T23:26:20.8922545Z         }
2026-06-07T23:26:20.8922701Z       }
2026-06-07T23:26:20.8922860Z     },
2026-06-07T23:26:20.8923016Z     {
2026-06-07T23:26:20.8923189Z       "id": "REQ-ARCH-4",
2026-06-07T23:26:20.8923460Z       "title": "Copy-verbatim the commodity layer from the sister project",
2026-06-07T23:26:20.8923761Z       "requiredStages": [
2026-06-07T23:26:20.8923960Z         "impl",
2026-06-07T23:26:20.8924143Z         "unit"
2026-06-07T23:26:20.8924308Z       ],
2026-06-07T23:26:20.8924472Z       "stages": {
2026-06-07T23:26:20.8924655Z         "doc": {
2026-06-07T23:26:20.8924836Z           "complete": false,
2026-06-07T23:26:20.8925048Z           "evidence": []
2026-06-07T23:26:20.8925230Z         },
2026-06-07T23:26:20.8925392Z         "impl": {
2026-06-07T23:26:20.8925578Z           "complete": true,
2026-06-07T23:26:20.8925774Z           "evidence": [
2026-06-07T23:26:20.8925959Z             {
2026-06-07T23:26:20.8926151Z               "path": "crates/spt-proto/src/event.rs",
2026-06-07T23:26:20.8926394Z               "line": 82
2026-06-07T23:26:20.8926575Z             },
2026-06-07T23:26:20.8926737Z             {
2026-06-07T23:26:20.8926932Z               "path": "crates/spt-proto/src/event.rs",
2026-06-07T23:26:20.8927301Z               "line": 96
2026-06-07T23:26:20.8927485Z             },
2026-06-07T23:26:20.8927651Z             {
2026-06-07T23:26:20.8927846Z               "path": "crates/spt-proto/src/event.rs",
2026-06-07T23:26:20.8928077Z               "line": 116
2026-06-07T23:26:20.8928262Z             },
2026-06-07T23:26:20.8928424Z             {
2026-06-07T23:26:20.8928615Z               "path": "crates/spt-proto/src/event.rs",
2026-06-07T23:26:20.8928853Z               "line": 131
2026-06-07T23:26:20.8929043Z             },
2026-06-07T23:26:20.8929211Z             {
2026-06-07T23:26:20.8929396Z               "path": "crates/spt-proto/src/event.rs",
2026-06-07T23:26:20.8929631Z               "line": 181
2026-06-07T23:26:20.8929812Z             }
2026-06-07T23:26:20.8929984Z           ]
2026-06-07T23:26:20.8930148Z         },
2026-06-07T23:26:20.8930310Z         "int": {
2026-06-07T23:26:20.8930495Z           "complete": false,
2026-06-07T23:26:20.8930695Z           "evidence": []
2026-06-07T23:26:20.8930877Z         },
2026-06-07T23:26:20.8931037Z         "unit": {
2026-06-07T23:26:20.8931211Z           "complete": true,
2026-06-07T23:26:20.8931516Z           "evidence": [
2026-06-07T23:26:20.8931691Z             {
2026-06-07T23:26:20.8931883Z               "path": "crates/spt-proto/src/event.rs",
2026-06-07T23:26:20.8932117Z               "line": 242
2026-06-07T23:26:20.8932306Z             },
2026-06-07T23:26:20.8932563Z             {
2026-06-07T23:26:20.8932758Z               "path": "crates/spt-proto/src/event.rs",
2026-06-07T23:26:20.8932985Z               "line": 252
2026-06-07T23:26:20.8933162Z             },
2026-06-07T23:26:20.8933328Z             {
2026-06-07T23:26:20.8933510Z               "path": "crates/spt-proto/src/event.rs",
2026-06-07T23:26:20.8933744Z               "line": 263
2026-06-07T23:26:20.8933924Z             },
2026-06-07T23:26:20.8934092Z             {
2026-06-07T23:26:20.8934286Z               "path": "crates/spt-proto/src/event.rs",
2026-06-07T23:26:20.8934520Z               "line": 274
2026-06-07T23:26:20.8934703Z             },
2026-06-07T23:26:20.8934863Z             {
2026-06-07T23:26:20.8935046Z               "path": "crates/spt-proto/src/event.rs",
2026-06-07T23:26:20.8935292Z               "line": 286
2026-06-07T23:26:20.8935476Z             },
2026-06-07T23:26:20.8935642Z             {
2026-06-07T23:26:20.8935823Z               "path": "crates/spt-proto/src/event.rs",
2026-06-07T23:26:20.8936058Z               "line": 299
2026-06-07T23:26:20.8936262Z             },
2026-06-07T23:26:20.8936425Z             {
2026-06-07T23:26:20.8936612Z               "path": "crates/spt-proto/src/event.rs",
2026-06-07T23:26:20.8936843Z               "line": 310
2026-06-07T23:26:20.8937106Z             },
2026-06-07T23:26:20.8937274Z             {
2026-06-07T23:26:20.8937464Z               "path": "crates/spt-proto/src/event.rs",
2026-06-07T23:26:20.8937702Z               "line": 327
2026-06-07T23:26:20.8937880Z             },
2026-06-07T23:26:20.8938045Z             {
2026-06-07T23:26:20.8938241Z               "path": "crates/spt-proto/src/event.rs",
2026-06-07T23:26:20.8938469Z               "line": 358
2026-06-07T23:26:20.8938651Z             }
2026-06-07T23:26:20.8938832Z           ]
2026-06-07T23:26:20.8938994Z         }
2026-06-07T23:26:20.8939152Z       }
2026-06-07T23:26:20.8939313Z     },
2026-06-07T23:26:20.8939471Z     {
2026-06-07T23:26:20.8939642Z       "id": "REQ-CLI-1",
2026-06-07T23:26:20.8940775Z       "title": "spt endpoint noun namespace: absorbs fork/suspend/wake/shutdown/rename/stop/digest + access (ported 1:1: allow|revoke|open|list, decision 21) + description (ex-resources blurb; bare=show, set=author); merged endpoint list [--local|--subnet <name>] grouped by subnet with SELF pinned, --detail adding the ex-resources yellow-pages blurb projection; bare spt endpoint = the list (M8 decisions 1-2, 25)",
2026-06-07T23:26:20.8941956Z       "requiredStages": [
2026-06-07T23:26:20.8942151Z         "impl",
2026-06-07T23:26:20.8942323Z         "unit"
2026-06-07T23:26:20.8942494Z       ],
2026-06-07T23:26:20.8942658Z       "stages": {
2026-06-07T23:26:20.8942833Z         "doc": {
2026-06-07T23:26:20.8943016Z           "complete": false,
2026-06-07T23:26:20.8943223Z           "evidence": []
2026-06-07T23:26:20.8943418Z         },
2026-06-07T23:26:20.8943587Z         "impl": {
2026-06-07T23:26:20.8943775Z           "complete": true,
2026-06-07T23:26:20.8943970Z           "evidence": [
2026-06-07T23:26:20.8944164Z             {
2026-06-07T23:26:20.8944351Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.8944590Z               "line": 193
2026-06-07T23:26:20.8944775Z             },
2026-06-07T23:26:20.8944939Z             {
2026-06-07T23:26:20.8945128Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.8945361Z               "line": 740
2026-06-07T23:26:20.8945544Z             },
2026-06-07T23:26:20.8945709Z             {
2026-06-07T23:26:20.8945890Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.8946130Z               "line": 1040
2026-06-07T23:26:20.8946327Z             },
2026-06-07T23:26:20.8946493Z             {
2026-06-07T23:26:20.8946693Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.8947118Z               "line": 1816
2026-06-07T23:26:20.8947304Z             }
2026-06-07T23:26:20.8947472Z           ]
2026-06-07T23:26:20.8947637Z         },
2026-06-07T23:26:20.8947801Z         "int": {
2026-06-07T23:26:20.8948087Z           "complete": false,
2026-06-07T23:26:20.8948300Z           "evidence": []
2026-06-07T23:26:20.8948487Z         },
2026-06-07T23:26:20.8948652Z         "unit": {
2026-06-07T23:26:20.8948849Z           "complete": true,
2026-06-07T23:26:20.8949053Z           "evidence": [
2026-06-07T23:26:20.8949239Z             {
2026-06-07T23:26:20.8949430Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.8949663Z               "line": 4618
2026-06-07T23:26:20.8949854Z             }
2026-06-07T23:26:20.8950021Z           ]
2026-06-07T23:26:20.8950192Z         }
2026-06-07T23:26:20.8950361Z       }
2026-06-07T23:26:20.8950521Z     },
2026-06-07T23:26:20.8950680Z     {
2026-06-07T23:26:20.8950850Z       "id": "REQ-CLI-2",
2026-06-07T23:26:20.8951625Z       "title": "spt daemon noun: run|stop|status (hidden daemon verb becomes daemon run; agent-endpoint shutdown keeps its name under endpoint); daemon status renders the pump heartbeat (last-tick recency) so a half-dead daemon is never rendered implied-healthy (M8 decisions 5, 23)",
2026-06-07T23:26:20.8952426Z       "requiredStages": [
2026-06-07T23:26:20.8952631Z         "impl",
2026-06-07T23:26:20.8952802Z         "unit"
2026-06-07T23:26:20.8952975Z       ],
2026-06-07T23:26:20.8953140Z       "stages": {
2026-06-07T23:26:20.8953318Z         "doc": {
2026-06-07T23:26:20.8953494Z           "complete": false,
2026-06-07T23:26:20.8953698Z           "evidence": []
2026-06-07T23:26:20.8953893Z         },
2026-06-07T23:26:20.8954062Z         "impl": {
2026-06-07T23:26:20.8954254Z           "complete": true,
2026-06-07T23:26:20.8954453Z           "evidence": [
2026-06-07T23:26:20.8954640Z             {
2026-06-07T23:26:20.8954845Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-07T23:26:20.8955106Z               "line": 260
2026-06-07T23:26:20.8955288Z             },
2026-06-07T23:26:20.8955460Z             {
2026-06-07T23:26:20.8955655Z               "path": "crates/spt-daemon/src/endpoint.rs",
2026-06-07T23:26:20.8955907Z               "line": 65
2026-06-07T23:26:20.8956090Z             },
2026-06-07T23:26:20.8956255Z             {
2026-06-07T23:26:20.8956445Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-07T23:26:20.8956686Z               "line": 239
2026-06-07T23:26:20.8956859Z             },
2026-06-07T23:26:20.8957168Z             {
2026-06-07T23:26:20.8957344Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.8957573Z               "line": 337
2026-06-07T23:26:20.8957765Z             },
2026-06-07T23:26:20.8957921Z             {
2026-06-07T23:26:20.8958098Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.8958323Z               "line": 782
2026-06-07T23:26:20.8958512Z             },
2026-06-07T23:26:20.8958671Z             {
2026-06-07T23:26:20.8958855Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.8959080Z               "line": 1224
2026-06-07T23:26:20.8959274Z             },
2026-06-07T23:26:20.8959442Z             {
2026-06-07T23:26:20.8959627Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.8959861Z               "line": 1239
2026-06-07T23:26:20.8960052Z             },
2026-06-07T23:26:20.8960223Z             {
2026-06-07T23:26:20.8960409Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.8960634Z               "line": 1261
2026-06-07T23:26:20.8960824Z             }
2026-06-07T23:26:20.8960987Z           ]
2026-06-07T23:26:20.8961148Z         },
2026-06-07T23:26:20.8961311Z         "int": {
2026-06-07T23:26:20.8961492Z           "complete": false,
2026-06-07T23:26:20.8961696Z           "evidence": []
2026-06-07T23:26:20.8961882Z         },
2026-06-07T23:26:20.8962047Z         "unit": {
2026-06-07T23:26:20.8962228Z           "complete": true,
2026-06-07T23:26:20.8962436Z           "evidence": [
2026-06-07T23:26:20.8962746Z             {
2026-06-07T23:26:20.8962943Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-07T23:26:20.8963186Z               "line": 309
2026-06-07T23:26:20.8963371Z             },
2026-06-07T23:26:20.8963644Z             {
2026-06-07T23:26:20.8963835Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.8964073Z               "line": 4756
2026-06-07T23:26:20.8964263Z             }
2026-06-07T23:26:20.8964434Z           ]
2026-06-07T23:26:20.8964594Z         }
2026-06-07T23:26:20.8964752Z       }
2026-06-07T23:26:20.8964909Z     },
2026-06-07T23:26:20.8965313Z     {
2026-06-07T23:26:20.8965490Z       "id": "REQ-CLI-3",
2026-06-07T23:26:20.8966287Z       "title": "Agent hot path stays flat across the M8 reorg: send/ring/ready/whoami/how-to unchanged; notify moves to subnet notify while notif stays top-level; breaking renames land clean with no deprecation shims (zero external CLI consumers pre-spt-claude-code) (M8 decisions 3-4, 9)",
2026-06-07T23:26:20.8967189Z       "requiredStages": [
2026-06-07T23:26:20.8967395Z         "impl",
2026-06-07T23:26:20.8967565Z         "unit"
2026-06-07T23:26:20.8967733Z       ],
2026-06-07T23:26:20.8967904Z       "stages": {
2026-06-07T23:26:20.8968091Z         "doc": {
2026-06-07T23:26:20.8968267Z           "complete": false,
2026-06-07T23:26:20.8968471Z           "evidence": []
2026-06-07T23:26:20.8968654Z         },
2026-06-07T23:26:20.8968825Z         "impl": {
2026-06-07T23:26:20.8969011Z           "complete": true,
2026-06-07T23:26:20.8969207Z           "evidence": [
2026-06-07T23:26:20.8969391Z             {
2026-06-07T23:26:20.8969580Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.8969810Z               "line": 734
2026-06-07T23:26:20.8969992Z             }
2026-06-07T23:26:20.8970159Z           ]
2026-06-07T23:26:20.8970331Z         },
2026-06-07T23:26:20.8970497Z         "int": {
2026-06-07T23:26:20.8970678Z           "complete": false,
2026-06-07T23:26:20.8970879Z           "evidence": []
2026-06-07T23:26:20.8971069Z         },
2026-06-07T23:26:20.8971232Z         "unit": {
2026-06-07T23:26:20.8971417Z           "complete": true,
2026-06-07T23:26:20.8971613Z           "evidence": [
2026-06-07T23:26:20.8971805Z             {
2026-06-07T23:26:20.8971994Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.8972228Z               "line": 4583
2026-06-07T23:26:20.8972413Z             }
2026-06-07T23:26:20.8972578Z           ]
2026-06-07T23:26:20.8972749Z         }
2026-06-07T23:26:20.8972912Z       }
2026-06-07T23:26:20.8973079Z     },
2026-06-07T23:26:20.8973236Z     {
2026-06-07T23:26:20.8973422Z       "id": "REQ-CONSENT-1",
2026-06-07T23:26:20.8974381Z       "title": "Consent grant store: capability x subject-agent x target-node rows, enforced at the target node, subnet-settable (replicates as security material near the trust store), revocable; gated-capability ids (remote-exec, instantiate-anywhere) reserved-but-refusing; v1 consumers are the shell spawn gates (CONTEXT Consent & security gates)",
2026-06-07T23:26:20.8975345Z       "requiredStages": [
2026-06-07T23:26:20.8975544Z         "impl",
2026-06-07T23:26:20.8975722Z         "unit"
2026-06-07T23:26:20.8975898Z       ],
2026-06-07T23:26:20.8976074Z       "stages": {
2026-06-07T23:26:20.8976246Z         "doc": {
2026-06-07T23:26:20.8976437Z           "complete": false,
2026-06-07T23:26:20.8976638Z           "evidence": []
2026-06-07T23:26:20.8976832Z         },
2026-06-07T23:26:20.8977051Z         "impl": {
2026-06-07T23:26:20.8977230Z           "complete": true,
2026-06-07T23:26:20.8977423Z           "evidence": [
2026-06-07T23:26:20.8977613Z             {
2026-06-07T23:26:20.8977815Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-07T23:26:20.8978073Z               "line": 27
2026-06-07T23:26:20.8978256Z             },
2026-06-07T23:26:20.8978426Z             {
2026-06-07T23:26:20.8978626Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-07T23:26:20.8978871Z               "line": 75
2026-06-07T23:26:20.8979176Z             },
2026-06-07T23:26:20.8979342Z             {
2026-06-07T23:26:20.8979534Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-07T23:26:20.8979772Z               "line": 98
2026-06-07T23:26:20.8980057Z             },
2026-06-07T23:26:20.8980224Z             {
2026-06-07T23:26:20.8980423Z               "path": "crates/spt-store/src/grants.rs",
2026-06-07T23:26:20.8980666Z               "line": 82
2026-06-07T23:26:20.8980858Z             },
2026-06-07T23:26:20.8981024Z             {
2026-06-07T23:26:20.8981215Z               "path": "crates/spt-store/src/grants.rs",
2026-06-07T23:26:20.8981454Z               "line": 109
2026-06-07T23:26:20.8981653Z             },
2026-06-07T23:26:20.8981820Z             {
2026-06-07T23:26:20.8982012Z               "path": "crates/spt-store/src/grants.rs",
2026-06-07T23:26:20.8982254Z               "line": 127
2026-06-07T23:26:20.8982431Z             },
2026-06-07T23:26:20.8982593Z             {
2026-06-07T23:26:20.8982788Z               "path": "crates/spt-store/src/grants.rs",
2026-06-07T23:26:20.8983026Z               "line": 142
2026-06-07T23:26:20.8983223Z             },
2026-06-07T23:26:20.8983391Z             {
2026-06-07T23:26:20.9028593Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9028951Z               "line": 4319
2026-06-07T23:26:20.9029156Z             }
2026-06-07T23:26:20.9029327Z           ]
2026-06-07T23:26:20.9029490Z         },
2026-06-07T23:26:20.9029656Z         "int": {
2026-06-07T23:26:20.9029842Z           "complete": false,
2026-06-07T23:26:20.9030054Z           "evidence": []
2026-06-07T23:26:20.9030237Z         },
2026-06-07T23:26:20.9030404Z         "unit": {
2026-06-07T23:26:20.9030587Z           "complete": true,
2026-06-07T23:26:20.9030784Z           "evidence": [
2026-06-07T23:26:20.9030965Z             {
2026-06-07T23:26:20.9031174Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-07T23:26:20.9031427Z               "line": 334
2026-06-07T23:26:20.9031623Z             },
2026-06-07T23:26:20.9031795Z             {
2026-06-07T23:26:20.9031991Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-07T23:26:20.9032243Z               "line": 380
2026-06-07T23:26:20.9032428Z             },
2026-06-07T23:26:20.9032602Z             {
2026-06-07T23:26:20.9032795Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-07T23:26:20.9033038Z               "line": 391
2026-06-07T23:26:20.9033224Z             },
2026-06-07T23:26:20.9033396Z             {
2026-06-07T23:26:20.9033597Z               "path": "crates/spt-store/src/grants.rs",
2026-06-07T23:26:20.9033834Z               "line": 165
2026-06-07T23:26:20.9034016Z             },
2026-06-07T23:26:20.9034183Z             {
2026-06-07T23:26:20.9034378Z               "path": "crates/spt-store/src/grants.rs",
2026-06-07T23:26:20.9034621Z               "line": 184
2026-06-07T23:26:20.9034807Z             },
2026-06-07T23:26:20.9034969Z             {
2026-06-07T23:26:20.9035161Z               "path": "crates/spt-store/src/grants.rs",
2026-06-07T23:26:20.9035398Z               "line": 204
2026-06-07T23:26:20.9035580Z             },
2026-06-07T23:26:20.9035740Z             {
2026-06-07T23:26:20.9035920Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9036154Z               "line": 4909
2026-06-07T23:26:20.9036338Z             }
2026-06-07T23:26:20.9036497Z           ]
2026-06-07T23:26:20.9036658Z         }
2026-06-07T23:26:20.9036816Z       }
2026-06-07T23:26:20.9037045Z     },
2026-06-07T23:26:20.9037207Z     {
2026-06-07T23:26:20.9037374Z       "id": "REQ-CONSENT-2",
2026-06-07T23:26:20.9038274Z       "title": "Interactive consent escalation: an ungated high-risk action routes a consent prompt to the user's most-recently-active session; allow-once / allow-always (writes a grant) / deny; pre-consent flags (can_shutdown, shell_wake_spawn_anywhere) author grants via manifest/settings (CONTEXT Consent & security gates)",
2026-06-07T23:26:20.9039186Z       "requiredStages": [
2026-06-07T23:26:20.9039612Z         "impl",
2026-06-07T23:26:20.9039783Z         "unit"
2026-06-07T23:26:20.9039951Z       ],
2026-06-07T23:26:20.9040112Z       "stages": {
2026-06-07T23:26:20.9040285Z         "doc": {
2026-06-07T23:26:20.9040469Z           "complete": false,
2026-06-07T23:26:20.9040793Z           "evidence": []
2026-06-07T23:26:20.9040978Z         },
2026-06-07T23:26:20.9041148Z         "impl": {
2026-06-07T23:26:20.9041330Z           "complete": true,
2026-06-07T23:26:20.9041530Z           "evidence": [
2026-06-07T23:26:20.9041715Z             {
2026-06-07T23:26:20.9041912Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-07T23:26:20.9042169Z               "line": 140
2026-06-07T23:26:20.9042350Z             },
2026-06-07T23:26:20.9042518Z             {
2026-06-07T23:26:20.9042717Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-07T23:26:20.9042964Z               "line": 165
2026-06-07T23:26:20.9043147Z             },
2026-06-07T23:26:20.9043307Z             {
2026-06-07T23:26:20.9043514Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-07T23:26:20.9043750Z               "line": 199
2026-06-07T23:26:20.9043932Z             },
2026-06-07T23:26:20.9044094Z             {
2026-06-07T23:26:20.9044289Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-07T23:26:20.9044533Z               "line": 241
2026-06-07T23:26:20.9044714Z             },
2026-06-07T23:26:20.9044881Z             {
2026-06-07T23:26:20.9045314Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-07T23:26:20.9045567Z               "line": 269
2026-06-07T23:26:20.9045754Z             },
2026-06-07T23:26:20.9045920Z             {
2026-06-07T23:26:20.9046107Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-07T23:26:20.9046334Z               "line": 300
2026-06-07T23:26:20.9046518Z             },
2026-06-07T23:26:20.9046685Z             {
2026-06-07T23:26:20.9046870Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9047171Z               "line": 4184
2026-06-07T23:26:20.9047372Z             },
2026-06-07T23:26:20.9047542Z             {
2026-06-07T23:26:20.9047725Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9047954Z               "line": 4242
2026-06-07T23:26:20.9048148Z             }
2026-06-07T23:26:20.9048307Z           ]
2026-06-07T23:26:20.9048468Z         },
2026-06-07T23:26:20.9048631Z         "int": {
2026-06-07T23:26:20.9048815Z           "complete": false,
2026-06-07T23:26:20.9049015Z           "evidence": []
2026-06-07T23:26:20.9049198Z         },
2026-06-07T23:26:20.9049366Z         "unit": {
2026-06-07T23:26:20.9049542Z           "complete": true,
2026-06-07T23:26:20.9049742Z           "evidence": [
2026-06-07T23:26:20.9049925Z             {
2026-06-07T23:26:20.9050119Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-07T23:26:20.9050358Z               "line": 419
2026-06-07T23:26:20.9050540Z             },
2026-06-07T23:26:20.9050705Z             {
2026-06-07T23:26:20.9050897Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-07T23:26:20.9051140Z               "line": 436
2026-06-07T23:26:20.9051329Z             },
2026-06-07T23:26:20.9051491Z             {
2026-06-07T23:26:20.9051684Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-07T23:26:20.9051933Z               "line": 472
2026-06-07T23:26:20.9052113Z             },
2026-06-07T23:26:20.9052275Z             {
2026-06-07T23:26:20.9052467Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-07T23:26:20.9052699Z               "line": 516
2026-06-07T23:26:20.9052891Z             },
2026-06-07T23:26:20.9053053Z             {
2026-06-07T23:26:20.9053239Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9053463Z               "line": 5804
2026-06-07T23:26:20.9053649Z             },
2026-06-07T23:26:20.9053816Z             {
2026-06-07T23:26:20.9054003Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9054225Z               "line": 5886
2026-06-07T23:26:20.9054412Z             }
2026-06-07T23:26:20.9054698Z           ]
2026-06-07T23:26:20.9054859Z         }
2026-06-07T23:26:20.9055017Z       }
2026-06-07T23:26:20.9055178Z     },
2026-06-07T23:26:20.9055332Z     {
2026-06-07T23:26:20.9055522Z       "id": "REQ-CONV-1",
2026-06-07T23:26:20.9057365Z       "title": "Peer address seeding, both cold starts: durable peer-addrs.json (identity dir) maps peer pubkey → last-known dialable address; the pump's resolver consults it FIRST with id-only discovery fallback on miss or dial failure (a stale addr never strands a peer); written by the pairing ceremony (both sides, from the live connection) and by the pump on successful connect; post-join first sync and post-restart resync converge in seconds, not ~1 min (M8 decisions 14, 20)",
2026-06-07T23:26:20.9058660Z       "requiredStages": [
2026-06-07T23:26:20.9058852Z         "impl",
2026-06-07T23:26:20.9059028Z         "unit"
2026-06-07T23:26:20.9059196Z       ],
2026-06-07T23:26:20.9059356Z       "stages": {
2026-06-07T23:26:20.9059546Z         "doc": {
2026-06-07T23:26:20.9059725Z           "complete": false,
2026-06-07T23:26:20.9059926Z           "evidence": []
2026-06-07T23:26:20.9060117Z         },
2026-06-07T23:26:20.9060288Z         "impl": {
2026-06-07T23:26:20.9060465Z           "complete": true,
2026-06-07T23:26:20.9060669Z           "evidence": [
2026-06-07T23:26:20.9060851Z             {
2026-06-07T23:26:20.9061057Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-07T23:26:20.9061303Z               "line": 576
2026-06-07T23:26:20.9061490Z             },
2026-06-07T23:26:20.9061661Z             {
2026-06-07T23:26:20.9061856Z               "path": "crates/spt-daemon/src/pairhost.rs",
2026-06-07T23:26:20.9062104Z               "line": 97
2026-06-07T23:26:20.9062282Z             },
2026-06-07T23:26:20.9062446Z             {
2026-06-07T23:26:20.9062640Z               "path": "crates/spt-daemon/src/pairhost.rs",
2026-06-07T23:26:20.9062883Z               "line": 324
2026-06-07T23:26:20.9063060Z             },
2026-06-07T23:26:20.9063236Z             {
2026-06-07T23:26:20.9063441Z               "path": "crates/spt-daemon/src/pairhost.rs",
2026-06-07T23:26:20.9063676Z               "line": 365
2026-06-07T23:26:20.9063861Z             },
2026-06-07T23:26:20.9064033Z             {
2026-06-07T23:26:20.9064228Z               "path": "crates/spt-daemon/src/pairhost.rs",
2026-06-07T23:26:20.9064471Z               "line": 444
2026-06-07T23:26:20.9064654Z             },
2026-06-07T23:26:20.9064827Z             {
2026-06-07T23:26:20.9065033Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9065281Z               "line": 556
2026-06-07T23:26:20.9065476Z             },
2026-06-07T23:26:20.9065644Z             {
2026-06-07T23:26:20.9065844Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9066086Z               "line": 582
2026-06-07T23:26:20.9066273Z             },
2026-06-07T23:26:20.9066444Z             {
2026-06-07T23:26:20.9066654Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-07T23:26:20.9066908Z               "line": 333
2026-06-07T23:26:20.9067161Z             },
2026-06-07T23:26:20.9067335Z             {
2026-06-07T23:26:20.9067530Z               "path": "crates/spt-store/src/peeraddrs.rs",
2026-06-07T23:26:20.9067790Z               "line": 19
2026-06-07T23:26:20.9067986Z             }
2026-06-07T23:26:20.9068249Z           ]
2026-06-07T23:26:20.9068516Z         },
2026-06-07T23:26:20.9068859Z         "int": {
2026-06-07T23:26:20.9069145Z           "complete": false,
2026-06-07T23:26:20.9069469Z           "evidence": []
2026-06-07T23:26:20.9069751Z         },
2026-06-07T23:26:20.9070011Z         "unit": {
2026-06-07T23:26:20.9070318Z           "complete": true,
2026-06-07T23:26:20.9070619Z           "evidence": [
2026-06-07T23:26:20.9070872Z             {
2026-06-07T23:26:20.9071253Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9071578Z               "line": 845
2026-06-07T23:26:20.9071878Z             },
2026-06-07T23:26:20.9072270Z             {
2026-06-07T23:26:20.9072549Z               "path": "crates/spt-store/src/peeraddrs.rs",
2026-06-07T23:26:20.9072948Z               "line": 108
2026-06-07T23:26:20.9073215Z             },
2026-06-07T23:26:20.9073549Z             {
2026-06-07T23:26:20.9073940Z               "path": "crates/spt-store/src/peeraddrs.rs",
2026-06-07T23:26:20.9074264Z               "line": 134
2026-06-07T23:26:20.9074593Z             },
2026-06-07T23:26:20.9074851Z             {
2026-06-07T23:26:20.9075171Z               "path": "crates/spt-store/src/peeraddrs.rs",
2026-06-07T23:26:20.9075517Z               "line": 144
2026-06-07T23:26:20.9075793Z             }
2026-06-07T23:26:20.9076113Z           ]
2026-06-07T23:26:20.9076370Z         }
2026-06-07T23:26:20.9076637Z       }
2026-06-07T23:26:20.9076894Z     },
2026-06-07T23:26:20.9077310Z     {
2026-06-07T23:26:20.9077605Z       "id": "REQ-CONV-2",
2026-06-07T23:26:20.9078917Z       "title": "Event-driven advertisement: endpoint online/offline transitions (ready-listener start/stop, rest-state transition, perch death) trigger an immediate advertise_local + peer push as a WAKE of the existing pump loop (no second advertisement path — epoch lease + visibility gates ride unchanged); the cadence stays the steady-state floor (M8 decision 15)",
2026-06-07T23:26:20.9080139Z       "requiredStages": [
2026-06-07T23:26:20.9080438Z         "impl",
2026-06-07T23:26:20.9080709Z         "unit"
2026-06-07T23:26:20.9081004Z       ],
2026-06-07T23:26:20.9081266Z       "stages": {
2026-06-07T23:26:20.9081508Z         "doc": {
2026-06-07T23:26:20.9081823Z           "complete": false,
2026-06-07T23:26:20.9082157Z           "evidence": []
2026-06-07T23:26:20.9082467Z         },
2026-06-07T23:26:20.9082734Z         "impl": {
2026-06-07T23:26:20.9082981Z           "complete": true,
2026-06-07T23:26:20.9083326Z           "evidence": [
2026-06-07T23:26:20.9083595Z             {
2026-06-07T23:26:20.9083914Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9084322Z               "line": 316
2026-06-07T23:26:20.9084581Z             },
2026-06-07T23:26:20.9084895Z             {
2026-06-07T23:26:20.9085181Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9085529Z               "line": 292
2026-06-07T23:26:20.9085835Z             },
2026-06-07T23:26:20.9086082Z             {
2026-06-07T23:26:20.9086421Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9086798Z               "line": 643
2026-06-07T23:26:20.9087211Z             },
2026-06-07T23:26:20.9087483Z             {
2026-06-07T23:26:20.9087783Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9088180Z               "line": 654
2026-06-07T23:26:20.9088451Z             },
2026-06-07T23:26:20.9088702Z             {
2026-06-07T23:26:20.9089115Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9089497Z               "line": 334
2026-06-07T23:26:20.9089802Z             },
2026-06-07T23:26:20.9090060Z             {
2026-06-07T23:26:20.9090341Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9090713Z               "line": 1771
2026-06-07T23:26:20.9090998Z             },
2026-06-07T23:26:20.9091273Z             {
2026-06-07T23:26:20.9091620Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9091926Z               "line": 1787
2026-06-07T23:26:20.9092255Z             },
2026-06-07T23:26:20.9092526Z             {
2026-06-07T23:26:20.9092813Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9093166Z               "line": 1844
2026-06-07T23:26:20.9093438Z             }
2026-06-07T23:26:20.9093722Z           ]
2026-06-07T23:26:20.9094015Z         },
2026-06-07T23:26:20.9094287Z         "int": {
2026-06-07T23:26:20.9094577Z           "complete": false,
2026-06-07T23:26:20.9094864Z           "evidence": []
2026-06-07T23:26:20.9095170Z         },
2026-06-07T23:26:20.9095431Z         "unit": {
2026-06-07T23:26:20.9095676Z           "complete": true,
2026-06-07T23:26:20.9096151Z           "evidence": [
2026-06-07T23:26:20.9096456Z             {
2026-06-07T23:26:20.9096803Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9097238Z               "line": 926
2026-06-07T23:26:20.9097611Z             }
2026-06-07T23:26:20.9097916Z           ]
2026-06-07T23:26:20.9098163Z         }
2026-06-07T23:26:20.9098449Z       }
2026-06-07T23:26:20.9098706Z     },
2026-06-07T23:26:20.9098977Z     {
2026-06-07T23:26:20.9099285Z       "id": "REQ-DAEMON-1",
2026-06-07T23:26:20.9099656Z       "title": "One per-machine spt-daemon owning all per-machine state",
2026-06-07T23:26:20.9100066Z       "requiredStages": [
2026-06-07T23:26:20.9100425Z         "impl",
2026-06-07T23:26:20.9100691Z         "unit",
2026-06-07T23:26:20.9100977Z         "int"
2026-06-07T23:26:20.9101278Z       ],
2026-06-07T23:26:20.9101554Z       "stages": {
2026-06-07T23:26:20.9101837Z         "doc": {
2026-06-07T23:26:20.9102100Z           "complete": false,
2026-06-07T23:26:20.9102429Z           "evidence": []
2026-06-07T23:26:20.9102720Z         },
2026-06-07T23:26:20.9102948Z         "impl": {
2026-06-07T23:26:20.9103397Z           "complete": true,
2026-06-07T23:26:20.9103702Z           "evidence": [
2026-06-07T23:26:20.9104022Z             {
2026-06-07T23:26:20.9104320Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-07T23:26:20.9104633Z               "line": 12
2026-06-07T23:26:20.9104963Z             },
2026-06-07T23:26:20.9105219Z             {
2026-06-07T23:26:20.9105529Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9105897Z               "line": 16
2026-06-07T23:26:20.9106184Z             },
2026-06-07T23:26:20.9106493Z             {
2026-06-07T23:26:20.9106774Z               "path": "crates/spt-daemon/src/relay.rs",
2026-06-07T23:26:20.9107226Z               "line": 15
2026-06-07T23:26:20.9107594Z             },
2026-06-07T23:26:20.9107889Z             {
2026-06-07T23:26:20.9108176Z               "path": "crates/spt/src/api/live.rs",
2026-06-07T23:26:20.9108542Z               "line": 13
2026-06-07T23:26:20.9108942Z             }
2026-06-07T23:26:20.9109213Z           ]
2026-06-07T23:26:20.9109500Z         },
2026-06-07T23:26:20.9110002Z         "int": {
2026-06-07T23:26:20.9110288Z           "complete": true,
2026-06-07T23:26:20.9110612Z           "evidence": [
2026-06-07T23:26:20.9110884Z             {
2026-06-07T23:26:20.9111242Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-07T23:26:20.9111595Z               "line": 32
2026-06-07T23:26:20.9111876Z             }
2026-06-07T23:26:20.9112166Z           ]
2026-06-07T23:26:20.9112426Z         },
2026-06-07T23:26:20.9112660Z         "unit": {
2026-06-07T23:26:20.9112970Z           "complete": true,
2026-06-07T23:26:20.9113266Z           "evidence": [
2026-06-07T23:26:20.9113604Z             {
2026-06-07T23:26:20.9113901Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-07T23:26:20.9114220Z               "line": 285
2026-06-07T23:26:20.9114554Z             },
2026-06-07T23:26:20.9114818Z             {
2026-06-07T23:26:20.9115121Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-07T23:26:20.9115479Z               "line": 293
2026-06-07T23:26:20.9115756Z             },
2026-06-07T23:26:20.9122289Z             {
2026-06-07T23:26:20.9122538Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-07T23:26:20.9122807Z               "line": 309
2026-06-07T23:26:20.9123010Z             },
2026-06-07T23:26:20.9123182Z             {
2026-06-07T23:26:20.9123391Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-07T23:26:20.9123639Z               "line": 317
2026-06-07T23:26:20.9123822Z             },
2026-06-07T23:26:20.9123992Z             {
2026-06-07T23:26:20.9124197Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9124451Z               "line": 565
2026-06-07T23:26:20.9124640Z             },
2026-06-07T23:26:20.9124813Z             {
2026-06-07T23:26:20.9125017Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9125431Z               "line": 635
2026-06-07T23:26:20.9125619Z             },
2026-06-07T23:26:20.9125787Z             {
2026-06-07T23:26:20.9125986Z               "path": "crates/spt-daemon/src/relay.rs",
2026-06-07T23:26:20.9126316Z               "line": 104
2026-06-07T23:26:20.9126502Z             },
2026-06-07T23:26:20.9126674Z             {
2026-06-07T23:26:20.9126868Z               "path": "crates/spt-daemon/src/relay.rs",
2026-06-07T23:26:20.9127212Z               "line": 129
2026-06-07T23:26:20.9127394Z             }
2026-06-07T23:26:20.9127560Z           ]
2026-06-07T23:26:20.9127723Z         }
2026-06-07T23:26:20.9127884Z       }
2026-06-07T23:26:20.9128042Z     },
2026-06-07T23:26:20.9128202Z     {
2026-06-07T23:26:20.9128379Z       "id": "REQ-DAEMON-2",
2026-06-07T23:26:20.9128628Z       "title": "Broker/brain split for seamless self-update",
2026-06-07T23:26:20.9128899Z       "requiredStages": [
2026-06-07T23:26:20.9129104Z         "impl",
2026-06-07T23:26:20.9129281Z         "unit",
2026-06-07T23:26:20.9129447Z         "int"
2026-06-07T23:26:20.9129615Z       ],
2026-06-07T23:26:20.9129785Z       "stages": {
2026-06-07T23:26:20.9129878Z         "doc": {
2026-06-07T23:26:20.9129991Z           "complete": false,
2026-06-07T23:26:20.9130086Z           "evidence": []
2026-06-07T23:26:20.9130173Z         },
2026-06-07T23:26:20.9130264Z         "impl": {
2026-06-07T23:26:20.9130366Z           "complete": true,
2026-06-07T23:26:20.9130444Z           "evidence": [
2026-06-07T23:26:20.9130536Z             {
2026-06-07T23:26:20.9130658Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-07T23:26:20.9130748Z               "line": 23
2026-06-07T23:26:20.9130839Z             },
2026-06-07T23:26:20.9130915Z             {
2026-06-07T23:26:20.9131026Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-07T23:26:20.9131112Z               "line": 531
2026-06-07T23:26:20.9131200Z             },
2026-06-07T23:26:20.9131295Z             {
2026-06-07T23:26:20.9131408Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-07T23:26:20.9131524Z               "line": 684
2026-06-07T23:26:20.9131605Z             },
2026-06-07T23:26:20.9131694Z             {
2026-06-07T23:26:20.9131819Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-07T23:26:20.9131914Z               "line": 32
2026-06-07T23:26:20.9131999Z             },
2026-06-07T23:26:20.9132086Z             {
2026-06-07T23:26:20.9132205Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-07T23:26:20.9132291Z               "line": 191
2026-06-07T23:26:20.9132386Z             },
2026-06-07T23:26:20.9132468Z             {
2026-06-07T23:26:20.9132591Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-07T23:26:20.9132687Z               "line": 546
2026-06-07T23:26:20.9132768Z             },
2026-06-07T23:26:20.9132858Z             {
2026-06-07T23:26:20.9132977Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-07T23:26:20.9133078Z               "line": 788
2026-06-07T23:26:20.9133164Z             },
2026-06-07T23:26:20.9133248Z             {
2026-06-07T23:26:20.9133367Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-07T23:26:20.9133462Z               "line": 11
2026-06-07T23:26:20.9133555Z             },
2026-06-07T23:26:20.9133641Z             {
2026-06-07T23:26:20.9133761Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-07T23:26:20.9133847Z               "line": 146
2026-06-07T23:26:20.9133942Z             },
2026-06-07T23:26:20.9134032Z             {
2026-06-07T23:26:20.9134147Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-07T23:26:20.9134241Z               "line": 13
2026-06-07T23:26:20.9134323Z             },
2026-06-07T23:26:20.9134410Z             {
2026-06-07T23:26:20.9134523Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-07T23:26:20.9134609Z               "line": 27
2026-06-07T23:26:20.9134696Z             },
2026-06-07T23:26:20.9134781Z             {
2026-06-07T23:26:20.9135021Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-07T23:26:20.9135110Z               "line": 94
2026-06-07T23:26:20.9135200Z             },
2026-06-07T23:26:20.9135282Z             {
2026-06-07T23:26:20.9135487Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-07T23:26:20.9135582Z               "line": 415
2026-06-07T23:26:20.9135665Z             },
2026-06-07T23:26:20.9135753Z             {
2026-06-07T23:26:20.9135867Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-07T23:26:20.9135963Z               "line": 535
2026-06-07T23:26:20.9136052Z             },
2026-06-07T23:26:20.9136137Z             {
2026-06-07T23:26:20.9136256Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-07T23:26:20.9136342Z               "line": 595
2026-06-07T23:26:20.9136432Z             },
2026-06-07T23:26:20.9136517Z             {
2026-06-07T23:26:20.9136633Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-07T23:26:20.9136733Z               "line": 644
2026-06-07T23:26:20.9136818Z             },
2026-06-07T23:26:20.9136904Z             {
2026-06-07T23:26:20.9137391Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-07T23:26:20.9137485Z               "line": 692
2026-06-07T23:26:20.9137578Z             },
2026-06-07T23:26:20.9137667Z             {
2026-06-07T23:26:20.9137791Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-07T23:26:20.9137878Z               "line": 10
2026-06-07T23:26:20.9137968Z             }
2026-06-07T23:26:20.9138053Z           ]
2026-06-07T23:26:20.9138144Z         },
2026-06-07T23:26:20.9138231Z         "int": {
2026-06-07T23:26:20.9138330Z           "complete": true,
2026-06-07T23:26:20.9138426Z           "evidence": [
2026-06-07T23:26:20.9138512Z             {
2026-06-07T23:26:20.9138635Z               "path": "crates/spt-daemon/tests/broker.rs",
2026-06-07T23:26:20.9138724Z               "line": 17
2026-06-07T23:26:20.9138810Z             },
2026-06-07T23:26:20.9138907Z             {
2026-06-07T23:26:20.9139039Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-07T23:26:20.9139130Z               "line": 33
2026-06-07T23:26:20.9139217Z             },
2026-06-07T23:26:20.9139311Z             {
2026-06-07T23:26:20.9139435Z               "path": "crates/spt-daemon/tests/handoff.rs",
2026-06-07T23:26:20.9139531Z               "line": 19
2026-06-07T23:26:20.9139612Z             },
2026-06-07T23:26:20.9139702Z             {
2026-06-07T23:26:20.9139827Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-07T23:26:20.9139917Z               "line": 70
2026-06-07T23:26:20.9140012Z             },
2026-06-07T23:26:20.9140093Z             {
2026-06-07T23:26:20.9140217Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-07T23:26:20.9140303Z               "line": 90
2026-06-07T23:26:20.9140399Z             },
2026-06-07T23:26:20.9140490Z             {
2026-06-07T23:26:20.9140603Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-07T23:26:20.9140704Z               "line": 166
2026-06-07T23:26:20.9140790Z             },
2026-06-07T23:26:20.9140880Z             {
2026-06-07T23:26:20.9140994Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-07T23:26:20.9141096Z               "line": 208
2026-06-07T23:26:20.9141181Z             },
2026-06-07T23:26:20.9141265Z             {
2026-06-07T23:26:20.9141394Z               "path": "crates/spt-daemon/tests/netstream.rs",
2026-06-07T23:26:20.9141479Z               "line": 127
2026-06-07T23:26:20.9141573Z             }
2026-06-07T23:26:20.9141658Z           ]
2026-06-07T23:26:20.9141745Z         },
2026-06-07T23:26:20.9141836Z         "unit": {
2026-06-07T23:26:20.9141930Z           "complete": true,
2026-06-07T23:26:20.9142026Z           "evidence": [
2026-06-07T23:26:20.9142112Z             {
2026-06-07T23:26:20.9142231Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-07T23:26:20.9142326Z               "line": 62
2026-06-07T23:26:20.9142508Z             },
2026-06-07T23:26:20.9142593Z             {
2026-06-07T23:26:20.9142708Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-07T23:26:20.9142803Z               "line": 76
2026-06-07T23:26:20.9142888Z             },
2026-06-07T23:26:20.9143061Z             {
2026-06-07T23:26:20.9143175Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-07T23:26:20.9143261Z               "line": 88
2026-06-07T23:26:20.9143352Z             },
2026-06-07T23:26:20.9143432Z             {
2026-06-07T23:26:20.9143552Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-07T23:26:20.9143639Z               "line": 294
2026-06-07T23:26:20.9143724Z             },
2026-06-07T23:26:20.9143808Z             {
2026-06-07T23:26:20.9143922Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-07T23:26:20.9144018Z               "line": 583
2026-06-07T23:26:20.9144102Z             },
2026-06-07T23:26:20.9144187Z             {
2026-06-07T23:26:20.9144297Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-07T23:26:20.9144398Z               "line": 591
2026-06-07T23:26:20.9144487Z             },
2026-06-07T23:26:20.9144574Z             {
2026-06-07T23:26:20.9144683Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-07T23:26:20.9144778Z               "line": 608
2026-06-07T23:26:20.9144864Z             },
2026-06-07T23:26:20.9144946Z             {
2026-06-07T23:26:20.9145056Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-07T23:26:20.9145150Z               "line": 662
2026-06-07T23:26:20.9145232Z             },
2026-06-07T23:26:20.9145327Z             {
2026-06-07T23:26:20.9145441Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-07T23:26:20.9145533Z               "line": 762
2026-06-07T23:26:20.9145619Z             },
2026-06-07T23:26:20.9145703Z             {
2026-06-07T23:26:20.9145822Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-07T23:26:20.9145910Z               "line": 774
2026-06-07T23:26:20.9146003Z             },
2026-06-07T23:26:20.9146089Z             {
2026-06-07T23:26:20.9146210Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-07T23:26:20.9146299Z               "line": 110
2026-06-07T23:26:20.9146385Z             }
2026-06-07T23:26:20.9146484Z           ]
2026-06-07T23:26:20.9146570Z         }
2026-06-07T23:26:20.9146658Z       }
2026-06-07T23:26:20.9146749Z     },
2026-06-07T23:26:20.9146840Z     {
2026-06-07T23:26:20.9146932Z       "id": "REQ-DAEMON-3",
2026-06-07T23:26:20.9147189Z       "title": "Any api invocation auto-starts the daemon if absent",
2026-06-07T23:26:20.9147288Z       "requiredStages": [
2026-06-07T23:26:20.9147373Z         "impl",
2026-06-07T23:26:20.9147464Z         "unit",
2026-06-07T23:26:20.9147550Z         "int"
2026-06-07T23:26:20.9147631Z       ],
2026-06-07T23:26:20.9147721Z       "stages": {
2026-06-07T23:26:20.9147814Z         "doc": {
2026-06-07T23:26:20.9147908Z           "complete": false,
2026-06-07T23:26:20.9148003Z           "evidence": []
2026-06-07T23:26:20.9148094Z         },
2026-06-07T23:26:20.9148185Z         "impl": {
2026-06-07T23:26:20.9148280Z           "complete": true,
2026-06-07T23:26:20.9148365Z           "evidence": [
2026-06-07T23:26:20.9148453Z             {
2026-06-07T23:26:20.9148575Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-07T23:26:20.9148666Z               "line": 14
2026-06-07T23:26:20.9148753Z             },
2026-06-07T23:26:20.9148833Z             {
2026-06-07T23:26:20.9148956Z               "path": "crates/spt-daemon/src/endpoint.rs",
2026-06-07T23:26:20.9149044Z               "line": 11
2026-06-07T23:26:20.9149134Z             },
2026-06-07T23:26:20.9149218Z             {
2026-06-07T23:26:20.9149327Z               "path": "crates/spt/src/api/mod.rs",
2026-06-07T23:26:20.9149419Z               "line": 247
2026-06-07T23:26:20.9149505Z             },
2026-06-07T23:26:20.9149585Z             {
2026-06-07T23:26:20.9149690Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9149890Z               "line": 1223
2026-06-07T23:26:20.9149981Z             },
2026-06-07T23:26:20.9150063Z             {
2026-06-07T23:26:20.9150172Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9150262Z               "line": 2598
2026-06-07T23:26:20.9150439Z             },
2026-06-07T23:26:20.9150520Z             {
2026-06-07T23:26:20.9150625Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9150716Z               "line": 2619
2026-06-07T23:26:20.9150801Z             }
2026-06-07T23:26:20.9150887Z           ]
2026-06-07T23:26:20.9150968Z         },
2026-06-07T23:26:20.9151064Z         "int": {
2026-06-07T23:26:20.9151163Z           "complete": true,
2026-06-07T23:26:20.9151254Z           "evidence": [
2026-06-07T23:26:20.9151341Z             {
2026-06-07T23:26:20.9151454Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-07T23:26:20.9151545Z               "line": 46
2026-06-07T23:26:20.9151627Z             },
2026-06-07T23:26:20.9151713Z             {
2026-06-07T23:26:20.9151839Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-07T23:26:20.9151930Z               "line": 435
2026-06-07T23:26:20.9152021Z             }
2026-06-07T23:26:20.9152105Z           ]
2026-06-07T23:26:20.9152185Z         },
2026-06-07T23:26:20.9152276Z         "unit": {
2026-06-07T23:26:20.9152372Z           "complete": true,
2026-06-07T23:26:20.9152462Z           "evidence": [
2026-06-07T23:26:20.9152543Z             {
2026-06-07T23:26:20.9152658Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-07T23:26:20.9152748Z               "line": 562
2026-06-07T23:26:20.9152838Z             },
2026-06-07T23:26:20.9152921Z             {
2026-06-07T23:26:20.9153029Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9153120Z               "line": 6591
2026-06-07T23:26:20.9153206Z             }
2026-06-07T23:26:20.9153292Z           ]
2026-06-07T23:26:20.9153383Z         }
2026-06-07T23:26:20.9153468Z       }
2026-06-07T23:26:20.9153550Z     },
2026-06-07T23:26:20.9153645Z     {
2026-06-07T23:26:20.9153736Z       "id": "REQ-DAEMON-4",
2026-06-07T23:26:20.9153860Z       "title": "Honor every KNOWN-HAZARDS invariant",
2026-06-07T23:26:20.9153955Z       "requiredStages": [
2026-06-07T23:26:20.9154050Z         "impl",
2026-06-07T23:26:20.9154136Z         "unit",
2026-06-07T23:26:20.9154218Z         "int"
2026-06-07T23:26:20.9154303Z       ],
2026-06-07T23:26:20.9154387Z       "stages": {
2026-06-07T23:26:20.9154482Z         "doc": {
2026-06-07T23:26:20.9154578Z           "complete": false,
2026-06-07T23:26:20.9154667Z           "evidence": []
2026-06-07T23:26:20.9154757Z         },
2026-06-07T23:26:20.9154843Z         "impl": {
2026-06-07T23:26:20.9154943Z           "complete": true,
2026-06-07T23:26:20.9155033Z           "evidence": [
2026-06-07T23:26:20.9155119Z             {
2026-06-07T23:26:20.9155253Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9155343Z               "line": 371
2026-06-07T23:26:20.9155434Z             },
2026-06-07T23:26:20.9155521Z             {
2026-06-07T23:26:20.9155649Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9155739Z               "line": 436
2026-06-07T23:26:20.9155826Z             },
2026-06-07T23:26:20.9156239Z             {
2026-06-07T23:26:20.9156369Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9156494Z               "line": 458
2026-06-07T23:26:20.9156582Z             }
2026-06-07T23:26:20.9156664Z           ]
2026-06-07T23:26:20.9156746Z         },
2026-06-07T23:26:20.9156832Z         "int": {
2026-06-07T23:26:20.9156916Z           "complete": true,
2026-06-07T23:26:20.9157087Z           "evidence": [
2026-06-07T23:26:20.9157177Z             {
2026-06-07T23:26:20.9157304Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-07T23:26:20.9157395Z               "line": 34
2026-06-07T23:26:20.9157492Z             }
2026-06-07T23:26:20.9157571Z           ]
2026-06-07T23:26:20.9157657Z         },
2026-06-07T23:26:20.9157948Z         "unit": {
2026-06-07T23:26:20.9158044Z           "complete": true,
2026-06-07T23:26:20.9158134Z           "evidence": [
2026-06-07T23:26:20.9158219Z             {
2026-06-07T23:26:20.9158340Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-07T23:26:20.9158534Z               "line": 428
2026-06-07T23:26:20.9158625Z             },
2026-06-07T23:26:20.9158708Z             {
2026-06-07T23:26:20.9158830Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9158916Z               "line": 784
2026-06-07T23:26:20.9159008Z             },
2026-06-07T23:26:20.9159102Z             {
2026-06-07T23:26:20.9159216Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9159308Z               "line": 854
2026-06-07T23:26:20.9159393Z             },
2026-06-07T23:26:20.9159478Z             {
2026-06-07T23:26:20.9159594Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9159685Z               "line": 884
2026-06-07T23:26:20.9159783Z             },
2026-06-07T23:26:20.9159864Z             {
2026-06-07T23:26:20.9159984Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9160070Z               "line": 917
2026-06-07T23:26:20.9160169Z             }
2026-06-07T23:26:20.9160255Z           ]
2026-06-07T23:26:20.9160342Z         }
2026-06-07T23:26:20.9160427Z       }
2026-06-07T23:26:20.9160512Z     },
2026-06-07T23:26:20.9160594Z     {
2026-06-07T23:26:20.9160689Z       "id": "REQ-DAEMON-5",
2026-06-07T23:26:20.9161991Z       "title": "Pump liveness: the peer pump writes a last-tick heartbeat consumed by daemon status / subnet status (decision 23 render legs in REQ-CLI-2/REQ-SUBNET-8); the daemon supervises the pump task — a panic is caught, logged loudly, and the pump restarts with capped backoff (≤5 min), so a 5.9-class death self-heals visibly instead of silently halving the daemon (M8 decision 23; field motivation: hfenduleam 2026-06-07 half-death)",
2026-06-07T23:26:20.9162096Z       "requiredStages": [
2026-06-07T23:26:20.9162192Z         "impl",
2026-06-07T23:26:20.9162282Z         "unit"
2026-06-07T23:26:20.9162372Z       ],
2026-06-07T23:26:20.9162466Z       "stages": {
2026-06-07T23:26:20.9162548Z         "doc": {
2026-06-07T23:26:20.9162655Z           "complete": false,
2026-06-07T23:26:20.9162750Z           "evidence": []
2026-06-07T23:26:20.9162836Z         },
2026-06-07T23:26:20.9162927Z         "impl": {
2026-06-07T23:26:20.9163017Z           "complete": true,
2026-06-07T23:26:20.9163113Z           "evidence": [
2026-06-07T23:26:20.9163194Z             {
2026-06-07T23:26:20.9163327Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9163422Z               "line": 282
2026-06-07T23:26:20.9163504Z             },
2026-06-07T23:26:20.9163594Z             {
2026-06-07T23:26:20.9163713Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9163810Z               "line": 651
2026-06-07T23:26:20.9163895Z             },
2026-06-07T23:26:20.9163995Z             {
2026-06-07T23:26:20.9164110Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9164200Z               "line": 664
2026-06-07T23:26:20.9164291Z             },
2026-06-07T23:26:20.9164371Z             {
2026-06-07T23:26:20.9164501Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9164590Z               "line": 682
2026-06-07T23:26:20.9164676Z             },
2026-06-07T23:26:20.9164764Z             {
2026-06-07T23:26:20.9164877Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9164971Z               "line": 723
2026-06-07T23:26:20.9165057Z             }
2026-06-07T23:26:20.9165142Z           ]
2026-06-07T23:26:20.9165398Z         },
2026-06-07T23:26:20.9165493Z         "int": {
2026-06-07T23:26:20.9165588Z           "complete": false,
2026-06-07T23:26:20.9165674Z           "evidence": []
2026-06-07T23:26:20.9165757Z         },
2026-06-07T23:26:20.9165842Z         "unit": {
2026-06-07T23:26:20.9166038Z           "complete": true,
2026-06-07T23:26:20.9166128Z           "evidence": [
2026-06-07T23:26:20.9166213Z             {
2026-06-07T23:26:20.9166343Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9166433Z               "line": 771
2026-06-07T23:26:20.9166595Z             },
2026-06-07T23:26:20.9166677Z             {
2026-06-07T23:26:20.9166804Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9166900Z               "line": 795
2026-06-07T23:26:20.9167077Z             },
2026-06-07T23:26:20.9167167Z             {
2026-06-07T23:26:20.9167287Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9167378Z               "line": 821
2026-06-07T23:26:20.9167467Z             }
2026-06-07T23:26:20.9167557Z           ]
2026-06-07T23:26:20.9167643Z         }
2026-06-07T23:26:20.9167728Z       }
2026-06-07T23:26:20.9167812Z     },
2026-06-07T23:26:20.9167893Z     {
2026-06-07T23:26:20.9167994Z       "id": "REQ-DOCS-1",
2026-06-07T23:26:20.9168193Z       "title": "Dual-audience docs (human + AI dev-agent), markdown once / two depths",
2026-06-07T23:26:20.9168294Z       "requiredStages": [
2026-06-07T23:26:20.9168385Z         "doc",
2026-06-07T23:26:20.9168470Z         "impl"
2026-06-07T23:26:20.9168566Z       ],
2026-06-07T23:26:20.9168652Z       "stages": {
2026-06-07T23:26:20.9168738Z         "doc": {
2026-06-07T23:26:20.9168827Z           "complete": true,
2026-06-07T23:26:20.9168919Z           "evidence": [
2026-06-07T23:26:20.9169004Z             {
2026-06-07T23:26:20.9169113Z               "path": "docs-site/src/index.md",
2026-06-07T23:26:20.9169205Z               "line": 50
2026-06-07T23:26:20.9169287Z             }
2026-06-07T23:26:20.9169376Z           ]
2026-06-07T23:26:20.9169457Z         },
2026-06-07T23:26:20.9169548Z         "impl": {
2026-06-07T23:26:20.9169643Z           "complete": true,
2026-06-07T23:26:20.9169729Z           "evidence": [
2026-06-07T23:26:20.9169824Z             {
2026-06-07T23:26:20.9169949Z               "path": ".github/workflows/docs-publish.yml",
2026-06-07T23:26:20.9170048Z               "line": 12
2026-06-07T23:26:20.9170134Z             },
2026-06-07T23:26:20.9170222Z             {
2026-06-07T23:26:20.9170334Z               "path": "crates/xtask/src/main.rs",
2026-06-07T23:26:20.9170429Z               "line": 14
2026-06-07T23:26:20.9170519Z             }
2026-06-07T23:26:20.9170601Z           ]
2026-06-07T23:26:20.9170691Z         },
2026-06-07T23:26:20.9170771Z         "int": {
2026-06-07T23:26:20.9170873Z           "complete": false,
2026-06-07T23:26:20.9170968Z           "evidence": []
2026-06-07T23:26:20.9171053Z         },
2026-06-07T23:26:20.9171144Z         "unit": {
2026-06-07T23:26:20.9171240Z           "complete": false,
2026-06-07T23:26:20.9171339Z           "evidence": []
2026-06-07T23:26:20.9171425Z         }
2026-06-07T23:26:20.9171522Z       }
2026-06-07T23:26:20.9171607Z     },
2026-06-07T23:26:20.9171692Z     {
2026-06-07T23:26:20.9171783Z       "id": "REQ-DOCS-2",
2026-06-07T23:26:20.9171955Z       "title": "Sub-10-minute runnable killer quickstart per audience",
2026-06-07T23:26:20.9172055Z       "requiredStages": [
2026-06-07T23:26:20.9172147Z         "doc",
2026-06-07T23:26:20.9172240Z         "int"
2026-06-07T23:26:20.9172336Z       ],
2026-06-07T23:26:20.9172423Z       "stages": {
2026-06-07T23:26:20.9172513Z         "doc": {
2026-06-07T23:26:20.9172612Z           "complete": true,
2026-06-07T23:26:20.9172704Z           "evidence": [
2026-06-07T23:26:20.9172786Z             {
2026-06-07T23:26:20.9172917Z               "path": "docs-site/src/quickstart/adapter.md",
2026-06-07T23:26:20.9173017Z               "line": 3
2026-06-07T23:26:20.9173103Z             },
2026-06-07T23:26:20.9173197Z             {
2026-06-07T23:26:20.9173328Z               "path": "docs-site/src/quickstart/messaging.md",
2026-06-07T23:26:20.9173421Z               "line": 3
2026-06-07T23:26:20.9173502Z             }
2026-06-07T23:26:20.9173592Z           ]
2026-06-07T23:26:20.9173682Z         },
2026-06-07T23:26:20.9173873Z         "impl": {
2026-06-07T23:26:20.9173973Z           "complete": false,
2026-06-07T23:26:20.9174064Z           "evidence": []
2026-06-07T23:26:20.9174150Z         },
2026-06-07T23:26:20.9174235Z         "int": {
2026-06-07T23:26:20.9174422Z           "complete": true,
2026-06-07T23:26:20.9174517Z           "evidence": [
2026-06-07T23:26:20.9174602Z             {
2026-06-07T23:26:20.9174727Z               "path": "crates/spt/tests/quickstart_e2e.rs",
2026-06-07T23:26:20.9174817Z               "line": 14
2026-06-07T23:26:20.9174903Z             }
2026-06-07T23:26:20.9174990Z           ]
2026-06-07T23:26:20.9175084Z         },
2026-06-07T23:26:20.9175170Z         "unit": {
2026-06-07T23:26:20.9175261Z           "complete": false,
2026-06-07T23:26:20.9175357Z           "evidence": []
2026-06-07T23:26:20.9175437Z         }
2026-06-07T23:26:20.9175522Z       }
2026-06-07T23:26:20.9175612Z     },
2026-06-07T23:26:20.9175740Z     {
2026-06-07T23:26:20.9175834Z       "id": "REQ-DOCS-3",
2026-06-07T23:26:20.9176054Z       "title": "Diátaxis structure; one canonical way to do X",
2026-06-07T23:26:20.9176153Z       "requiredStages": [
2026-06-07T23:26:20.9176239Z         "doc"
2026-06-07T23:26:20.9176331Z       ],
2026-06-07T23:26:20.9176426Z       "stages": {
2026-06-07T23:26:20.9176515Z         "doc": {
2026-06-07T23:26:20.9176603Z           "complete": true,
2026-06-07T23:26:20.9176702Z           "evidence": [
2026-06-07T23:26:20.9176788Z             {
2026-06-07T23:26:20.9176898Z               "path": "docs-site/src/index.md",
2026-06-07T23:26:20.9177079Z               "line": 42
2026-06-07T23:26:20.9177164Z             }
2026-06-07T23:26:20.9177251Z           ]
2026-06-07T23:26:20.9177336Z         },
2026-06-07T23:26:20.9177427Z         "impl": {
2026-06-07T23:26:20.9177527Z           "complete": false,
2026-06-07T23:26:20.9177619Z           "evidence": []
2026-06-07T23:26:20.9177707Z         },
2026-06-07T23:26:20.9177789Z         "int": {
2026-06-07T23:26:20.9177890Z           "complete": false,
2026-06-07T23:26:20.9177990Z           "evidence": []
2026-06-07T23:26:20.9178079Z         },
2026-06-07T23:26:20.9178169Z         "unit": {
2026-06-07T23:26:20.9178260Z           "complete": false,
2026-06-07T23:26:20.9178353Z           "evidence": []
2026-06-07T23:26:20.9178439Z         }
2026-06-07T23:26:20.9178534Z       }
2026-06-07T23:26:20.9178617Z     },
2026-06-07T23:26:20.9178705Z     {
2026-06-07T23:26:20.9178801Z       "id": "REQ-DOCS-4",
2026-06-07T23:26:20.9178997Z       "title": "Agent-consumable layer (llms.txt, manifest schema, MCP, CLI help)",
2026-06-07T23:26:20.9179092Z       "requiredStages": [
2026-06-07T23:26:20.9179179Z         "doc",
2026-06-07T23:26:20.9179273Z         "impl",
2026-06-07T23:26:20.9179359Z         "unit"
2026-06-07T23:26:20.9179445Z       ],
2026-06-07T23:26:20.9179536Z       "stages": {
2026-06-07T23:26:20.9179617Z         "doc": {
2026-06-07T23:26:20.9179712Z           "complete": true,
2026-06-07T23:26:20.9179808Z           "evidence": [
2026-06-07T23:26:20.9179903Z             {
2026-06-07T23:26:20.9180012Z               "path": "docs/DOCS-STRATEGY.md",
2026-06-07T23:26:20.9180109Z               "line": 35
2026-06-07T23:26:20.9180199Z             }
2026-06-07T23:26:20.9180284Z           ]
2026-06-07T23:26:20.9180380Z         },
2026-06-07T23:26:20.9180471Z         "impl": {
2026-06-07T23:26:20.9180565Z           "complete": true,
2026-06-07T23:26:20.9180661Z           "evidence": [
2026-06-07T23:26:20.9180753Z             {
2026-06-07T23:26:20.9180885Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:20.9180975Z               "line": 522
2026-06-07T23:26:20.9181065Z             },
2026-06-07T23:26:20.9181157Z             {
2026-06-07T23:26:20.9181270Z               "path": "crates/xtask/src/main.rs",
2026-06-07T23:26:20.9181356Z               "line": 15
2026-06-07T23:26:20.9181452Z             }
2026-06-07T23:26:20.9181538Z           ]
2026-06-07T23:26:20.9181623Z         },
2026-06-07T23:26:20.9181709Z         "int": {
2026-06-07T23:26:20.9181909Z           "complete": false,
2026-06-07T23:26:20.9182010Z           "evidence": []
2026-06-07T23:26:20.9182091Z         },
2026-06-07T23:26:20.9182182Z         "unit": {
2026-06-07T23:26:20.9182286Z           "complete": true,
2026-06-07T23:26:20.9182457Z           "evidence": [
2026-06-07T23:26:20.9182548Z             {
2026-06-07T23:26:20.9182668Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:20.9182763Z               "line": 978
2026-06-07T23:26:20.9182844Z             }
2026-06-07T23:26:20.9182939Z           ]
2026-06-07T23:26:20.9183026Z         }
2026-06-07T23:26:20.9183111Z       }
2026-06-07T23:26:20.9183196Z     },
2026-06-07T23:26:20.9183279Z     {
2026-06-07T23:26:20.9183374Z       "id": "REQ-DOCS-5",
2026-06-07T23:26:20.9183567Z       "title": "Anti-drift: rustdoc/schema/exports/CLI-help generated + CI-checked",
2026-06-07T23:26:20.9183673Z       "requiredStages": [
2026-06-07T23:26:20.9183761Z         "impl",
2026-06-07T23:26:20.9183847Z         "int"
2026-06-07T23:26:20.9183947Z       ],
2026-06-07T23:26:20.9184033Z       "stages": {
2026-06-07T23:26:20.9184123Z         "doc": {
2026-06-07T23:26:20.9184213Z           "complete": false,
2026-06-07T23:26:20.9184310Z           "evidence": []
2026-06-07T23:26:20.9184410Z         },
2026-06-07T23:26:20.9184495Z         "impl": {
2026-06-07T23:26:20.9184591Z           "complete": true,
2026-06-07T23:26:20.9184681Z           "evidence": [
2026-06-07T23:26:20.9184772Z             {
2026-06-07T23:26:20.9184891Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:20.9184986Z               "line": 523
2026-06-07T23:26:20.9185072Z             },
2026-06-07T23:26:20.9185334Z             {
2026-06-07T23:26:20.9185454Z               "path": "crates/xtask/src/main.rs",
2026-06-07T23:26:20.9185535Z               "line": 113
2026-06-07T23:26:20.9185616Z             }
2026-06-07T23:26:20.9185696Z           ]
2026-06-07T23:26:20.9185816Z         },
2026-06-07T23:26:20.9185931Z         "int": {
2026-06-07T23:26:20.9186030Z           "complete": true,
2026-06-07T23:26:20.9186110Z           "evidence": [
2026-06-07T23:26:20.9186187Z             {
2026-06-07T23:26:20.9186296Z               "path": ".github/workflows/ci.yml",
2026-06-07T23:26:20.9186417Z               "line": 86
2026-06-07T23:26:20.9186504Z             },
2026-06-07T23:26:20.9186586Z             {
2026-06-07T23:26:20.9186709Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:20.9186804Z               "line": 1015
2026-06-07T23:26:20.9186886Z             }
2026-06-07T23:26:20.9187066Z           ]
2026-06-07T23:26:20.9187153Z         },
2026-06-07T23:26:20.9187239Z         "unit": {
2026-06-07T23:26:20.9187338Z           "complete": false,
2026-06-07T23:26:20.9187419Z           "evidence": []
2026-06-07T23:26:20.9187506Z         }
2026-06-07T23:26:20.9187591Z       }
2026-06-07T23:26:20.9187677Z     },
2026-06-07T23:26:20.9187758Z     {
2026-06-07T23:26:20.9187859Z       "id": "REQ-DOCS-6",
2026-06-07T23:26:20.9188183Z       "title": "spt how-to <topic>: in-binary task-oriented agent instructions (anti-drift; quickstart prompts point agents at it)",
2026-06-07T23:26:20.9188277Z       "requiredStages": [
2026-06-07T23:26:20.9188368Z         "impl",
2026-06-07T23:26:20.9188460Z         "unit",
2026-06-07T23:26:20.9188545Z         "int"
2026-06-07T23:26:20.9188634Z       ],
2026-06-07T23:26:20.9188724Z       "stages": {
2026-06-07T23:26:20.9188811Z         "doc": {
2026-06-07T23:26:20.9191139Z           "complete": true,
2026-06-07T23:26:20.9191274Z           "evidence": [
2026-06-07T23:26:20.9191361Z             {
2026-06-07T23:26:20.9191511Z               "path": "docs-site/src/quickstart/messaging.md",
2026-06-07T23:26:20.9191601Z               "line": 4
2026-06-07T23:26:20.9191697Z             }
2026-06-07T23:26:20.9191788Z           ]
2026-06-07T23:26:20.9191868Z         },
2026-06-07T23:26:20.9191955Z         "impl": {
2026-06-07T23:26:20.9192050Z           "complete": true,
2026-06-07T23:26:20.9192140Z           "evidence": [
2026-06-07T23:26:20.9192389Z             {
2026-06-07T23:26:20.9192502Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9192594Z               "line": 3270
2026-06-07T23:26:20.9192679Z             }
2026-06-07T23:26:20.9192851Z           ]
2026-06-07T23:26:20.9192938Z         },
2026-06-07T23:26:20.9193022Z         "int": {
2026-06-07T23:26:20.9193118Z           "complete": true,
2026-06-07T23:26:20.9193209Z           "evidence": [
2026-06-07T23:26:20.9193295Z             {
2026-06-07T23:26:20.9193423Z               "path": "crates/spt/tests/quickstart_e2e.rs",
2026-06-07T23:26:20.9193514Z               "line": 34
2026-06-07T23:26:20.9193596Z             }
2026-06-07T23:26:20.9193680Z           ]
2026-06-07T23:26:20.9193761Z         },
2026-06-07T23:26:20.9193849Z         "unit": {
2026-06-07T23:26:20.9193944Z           "complete": true,
2026-06-07T23:26:20.9194028Z           "evidence": [
2026-06-07T23:26:20.9194113Z             {
2026-06-07T23:26:20.9194218Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9194321Z               "line": 6618
2026-06-07T23:26:20.9194407Z             }
2026-06-07T23:26:20.9194493Z           ]
2026-06-07T23:26:20.9194579Z         }
2026-06-07T23:26:20.9194664Z       }
2026-06-07T23:26:20.9194759Z     },
2026-06-07T23:26:20.9194841Z     {
2026-06-07T23:26:20.9194936Z       "id": "REQ-EP-1",
2026-06-07T23:26:20.9195069Z       "title": "Day-one endpoint types; open type system",
2026-06-07T23:26:20.9195166Z       "requiredStages": [
2026-06-07T23:26:20.9195255Z         "impl",
2026-06-07T23:26:20.9195341Z         "unit"
2026-06-07T23:26:20.9195427Z       ],
2026-06-07T23:26:20.9195514Z       "stages": {
2026-06-07T23:26:20.9195599Z         "doc": {
2026-06-07T23:26:20.9195694Z           "complete": false,
2026-06-07T23:26:20.9195785Z           "evidence": []
2026-06-07T23:26:20.9195875Z         },
2026-06-07T23:26:20.9195961Z         "impl": {
2026-06-07T23:26:20.9196056Z           "complete": true,
2026-06-07T23:26:20.9196149Z           "evidence": [
2026-06-07T23:26:20.9196237Z             {
2026-06-07T23:26:20.9196366Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-07T23:26:20.9196459Z               "line": 77
2026-06-07T23:26:20.9196547Z             },
2026-06-07T23:26:20.9196633Z             {
2026-06-07T23:26:20.9196752Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-07T23:26:20.9196837Z               "line": 94
2026-06-07T23:26:20.9196921Z             }
2026-06-07T23:26:20.9197136Z           ]
2026-06-07T23:26:20.9197231Z         },
2026-06-07T23:26:20.9197320Z         "int": {
2026-06-07T23:26:20.9197413Z           "complete": false,
2026-06-07T23:26:20.9197503Z           "evidence": []
2026-06-07T23:26:20.9197584Z         },
2026-06-07T23:26:20.9197675Z         "unit": {
2026-06-07T23:26:20.9197766Z           "complete": true,
2026-06-07T23:26:20.9197856Z           "evidence": [
2026-06-07T23:26:20.9197941Z             {
2026-06-07T23:26:20.9198052Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-07T23:26:20.9198156Z               "line": 161
2026-06-07T23:26:20.9198237Z             },
2026-06-07T23:26:20.9198323Z             {
2026-06-07T23:26:20.9198438Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-07T23:26:20.9198533Z               "line": 178
2026-06-07T23:26:20.9198618Z             }
2026-06-07T23:26:20.9198701Z           ]
2026-06-07T23:26:20.9198790Z         }
2026-06-07T23:26:20.9198871Z       }
2026-06-07T23:26:20.9198962Z     },
2026-06-07T23:26:20.9199068Z     {
2026-06-07T23:26:20.9199175Z       "id": "REQ-EP-2",
2026-06-07T23:26:20.9199337Z       "title": "Agent endpoints vs Shells distinction in the type model",
2026-06-07T23:26:20.9199431Z       "requiredStages": [
2026-06-07T23:26:20.9199525Z         "impl",
2026-06-07T23:26:20.9199606Z         "unit"
2026-06-07T23:26:20.9199694Z       ],
2026-06-07T23:26:20.9199784Z       "stages": {
2026-06-07T23:26:20.9199869Z         "doc": {
2026-06-07T23:26:20.9199960Z           "complete": false,
2026-06-07T23:26:20.9200160Z           "evidence": []
2026-06-07T23:26:20.9200241Z         },
2026-06-07T23:26:20.9200327Z         "impl": {
2026-06-07T23:26:20.9200423Z           "complete": true,
2026-06-07T23:26:20.9200512Z           "evidence": [
2026-06-07T23:26:20.9200690Z             {
2026-06-07T23:26:20.9200813Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-07T23:26:20.9200905Z               "line": 114
2026-06-07T23:26:20.9200991Z             },
2026-06-07T23:26:20.9201070Z             {
2026-06-07T23:26:20.9201190Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-07T23:26:20.9201277Z               "line": 131
2026-06-07T23:26:20.9201366Z             },
2026-06-07T23:26:20.9201452Z             {
2026-06-07T23:26:20.9201563Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-07T23:26:20.9201658Z               "line": 138
2026-06-07T23:26:20.9201737Z             }
2026-06-07T23:26:20.9201829Z           ]
2026-06-07T23:26:20.9201911Z         },
2026-06-07T23:26:20.9202005Z         "int": {
2026-06-07T23:26:20.9202099Z           "complete": false,
2026-06-07T23:26:20.9202191Z           "evidence": []
2026-06-07T23:26:20.9202277Z         },
2026-06-07T23:26:20.9202362Z         "unit": {
2026-06-07T23:26:20.9202462Z           "complete": true,
2026-06-07T23:26:20.9202554Z           "evidence": [
2026-06-07T23:26:20.9202640Z             {
2026-06-07T23:26:20.9202762Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-07T23:26:20.9202849Z               "line": 190
2026-06-07T23:26:20.9202934Z             },
2026-06-07T23:26:20.9203020Z             {
2026-06-07T23:26:20.9203140Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-07T23:26:20.9203226Z               "line": 208
2026-06-07T23:26:20.9203316Z             },
2026-06-07T23:26:20.9203396Z             {
2026-06-07T23:26:20.9203512Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-07T23:26:20.9203601Z               "line": 221
2026-06-07T23:26:20.9203682Z             }
2026-06-07T23:26:20.9203779Z           ]
2026-06-07T23:26:20.9203860Z         }
2026-06-07T23:26:20.9203944Z       }
2026-06-07T23:26:20.9204031Z     },
2026-06-07T23:26:20.9204113Z     {
2026-06-07T23:26:20.9204208Z       "id": "REQ-EP-3",
2026-06-07T23:26:20.9204389Z       "title": "Messaging payloads carry typed operation commands + file blobs",
2026-06-07T23:26:20.9204481Z       "requiredStages": [
2026-06-07T23:26:20.9204564Z         "impl",
2026-06-07T23:26:20.9204659Z         "unit"
2026-06-07T23:26:20.9204745Z       ],
2026-06-07T23:26:20.9204831Z       "stages": {
2026-06-07T23:26:20.9204919Z         "doc": {
2026-06-07T23:26:20.9205000Z           "complete": false,
2026-06-07T23:26:20.9205091Z           "evidence": []
2026-06-07T23:26:20.9205172Z         },
2026-06-07T23:26:20.9205257Z         "impl": {
2026-06-07T23:26:20.9205353Z           "complete": true,
2026-06-07T23:26:20.9205440Z           "evidence": [
2026-06-07T23:26:20.9205516Z             {
2026-06-07T23:26:20.9205634Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-07T23:26:20.9205731Z               "line": 31
2026-06-07T23:26:20.9205815Z             },
2026-06-07T23:26:20.9205896Z             {
2026-06-07T23:26:20.9206012Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-07T23:26:20.9206093Z               "line": 49
2026-06-07T23:26:20.9206179Z             }
2026-06-07T23:26:20.9206264Z           ]
2026-06-07T23:26:20.9206341Z         },
2026-06-07T23:26:20.9206445Z         "int": {
2026-06-07T23:26:20.9206554Z           "complete": false,
2026-06-07T23:26:20.9206646Z           "evidence": []
2026-06-07T23:26:20.9206727Z         },
2026-06-07T23:26:20.9206816Z         "unit": {
2026-06-07T23:26:20.9206903Z           "complete": true,
2026-06-07T23:26:20.9207079Z           "evidence": [
2026-06-07T23:26:20.9207164Z             {
2026-06-07T23:26:20.9207283Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-07T23:26:20.9207378Z               "line": 156
2026-06-07T23:26:20.9207462Z             },
2026-06-07T23:26:20.9207653Z             {
2026-06-07T23:26:20.9207767Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-07T23:26:20.9207858Z               "line": 164
2026-06-07T23:26:20.9207943Z             },
2026-06-07T23:26:20.9208110Z             {
2026-06-07T23:26:20.9208225Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-07T23:26:20.9208321Z               "line": 177
2026-06-07T23:26:20.9208402Z             },
2026-06-07T23:26:20.9208482Z             {
2026-06-07T23:26:20.9208603Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-07T23:26:20.9208687Z               "line": 200
2026-06-07T23:26:20.9208764Z             },
2026-06-07T23:26:20.9208849Z             {
2026-06-07T23:26:20.9208960Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-07T23:26:20.9209069Z               "line": 216
2026-06-07T23:26:20.9209154Z             },
2026-06-07T23:26:20.9209237Z             {
2026-06-07T23:26:20.9209355Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-07T23:26:20.9209446Z               "line": 233
2026-06-07T23:26:20.9209527Z             }
2026-06-07T23:26:20.9209608Z           ]
2026-06-07T23:26:20.9209693Z         }
2026-06-07T23:26:20.9209769Z       }
2026-06-07T23:26:20.9209859Z     },
2026-06-07T23:26:20.9209945Z     {
2026-06-07T23:26:20.9210039Z       "id": "REQ-EP-4",
2026-06-07T23:26:20.9210181Z       "title": "PresenceChannel broker endpoint (seam day-one)",
2026-06-07T23:26:20.9210278Z       "requiredStages": [
2026-06-07T23:26:20.9210367Z         "impl",
2026-06-07T23:26:20.9210453Z         "unit"
2026-06-07T23:26:20.9210539Z       ],
2026-06-07T23:26:20.9210630Z       "stages": {
2026-06-07T23:26:20.9210715Z         "doc": {
2026-06-07T23:26:20.9210806Z           "complete": false,
2026-06-07T23:26:20.9210902Z           "evidence": []
2026-06-07T23:26:20.9210992Z         },
2026-06-07T23:26:20.9211077Z         "impl": {
2026-06-07T23:26:20.9211174Z           "complete": true,
2026-06-07T23:26:20.9211264Z           "evidence": [
2026-06-07T23:26:20.9211359Z             {
2026-06-07T23:26:20.9211475Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-07T23:26:20.9211560Z               "line": 461
2026-06-07T23:26:20.9211645Z             },
2026-06-07T23:26:20.9211736Z             {
2026-06-07T23:26:20.9211851Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-07T23:26:20.9211940Z               "line": 706
2026-06-07T23:26:20.9212026Z             },
2026-06-07T23:26:20.9212109Z             {
2026-06-07T23:26:20.9212223Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-07T23:26:20.9212317Z               "line": 805
2026-06-07T23:26:20.9212399Z             },
2026-06-07T23:26:20.9212486Z             {
2026-06-07T23:26:20.9212598Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-07T23:26:20.9212688Z               "line": 83
2026-06-07T23:26:20.9212770Z             },
2026-06-07T23:26:20.9212855Z             {
2026-06-07T23:26:20.9212969Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-07T23:26:20.9213065Z               "line": 460
2026-06-07T23:26:20.9213152Z             },
2026-06-07T23:26:20.9213237Z             {
2026-06-07T23:26:20.9213346Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-07T23:26:20.9213442Z               "line": 546
2026-06-07T23:26:20.9213524Z             },
2026-06-07T23:26:20.9213608Z             {
2026-06-07T23:26:20.9213719Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-07T23:26:20.9213814Z               "line": 181
2026-06-07T23:26:20.9213900Z             },
2026-06-07T23:26:20.9213981Z             {
2026-06-07T23:26:20.9214106Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-07T23:26:20.9214195Z               "line": 317
2026-06-07T23:26:20.9214286Z             },
2026-06-07T23:26:20.9214368Z             {
2026-06-07T23:26:20.9214486Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-07T23:26:20.9214576Z               "line": 727
2026-06-07T23:26:20.9214664Z             }
2026-06-07T23:26:20.9214824Z           ]
2026-06-07T23:26:20.9214910Z         },
2026-06-07T23:26:20.9214997Z         "int": {
2026-06-07T23:26:20.9215088Z           "complete": false,
2026-06-07T23:26:20.9215181Z           "evidence": []
2026-06-07T23:26:20.9215565Z         },
2026-06-07T23:26:20.9215656Z         "unit": {
2026-06-07T23:26:20.9215752Z           "complete": true,
2026-06-07T23:26:20.9215846Z           "evidence": [
2026-06-07T23:26:20.9215928Z             {
2026-06-07T23:26:20.9216047Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-07T23:26:20.9216151Z               "line": 637
2026-06-07T23:26:20.9216247Z             },
2026-06-07T23:26:20.9216329Z             {
2026-06-07T23:26:20.9216461Z               "path": "crates/spt-daemon/tests/presence.rs",
2026-06-07T23:26:20.9216547Z               "line": 75
2026-06-07T23:26:20.9216639Z             },
2026-06-07T23:26:20.9216724Z             {
2026-06-07T23:26:20.9216848Z               "path": "crates/spt-daemon/tests/presence.rs",
2026-06-07T23:26:20.9217038Z               "line": 146
2026-06-07T23:26:20.9217119Z             }
2026-06-07T23:26:20.9217206Z           ]
2026-06-07T23:26:20.9217288Z         }
2026-06-07T23:26:20.9217372Z       }
2026-06-07T23:26:20.9217463Z     },
2026-06-07T23:26:20.9217545Z     {
2026-06-07T23:26:20.9217640Z       "id": "REQ-EP-5",
2026-06-07T23:26:20.9218266Z       "title": "Concrete shell instantiation model: spawn-mints-instance (vs relink/online), registered-on-node permission + broadcast-is-discovery, per-shell require_approval gate, max_instances_per_owner + over_cap, instance aliasing, discovery scope",
2026-06-07T23:26:20.9218360Z       "requiredStages": [
2026-06-07T23:26:20.9218450Z         "impl",
2026-06-07T23:26:20.9218538Z         "unit",
2026-06-07T23:26:20.9218623Z         "int"
2026-06-07T23:26:20.9218704Z       ],
2026-06-07T23:26:20.9218799Z       "stages": {
2026-06-07T23:26:20.9218881Z         "doc": {
2026-06-07T23:26:20.9218981Z           "complete": false,
2026-06-07T23:26:20.9219076Z           "evidence": []
2026-06-07T23:26:20.9219163Z         },
2026-06-07T23:26:20.9219252Z         "impl": {
2026-06-07T23:26:20.9219338Z           "complete": true,
2026-06-07T23:26:20.9219429Z           "evidence": [
2026-06-07T23:26:20.9219511Z             {
2026-06-07T23:26:20.9219643Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9219729Z               "line": 298
2026-06-07T23:26:20.9219821Z             },
2026-06-07T23:26:20.9219910Z             {
2026-06-07T23:26:20.9220030Z               "path": "crates/spt-daemon/src/shelldisc.rs",
2026-06-07T23:26:20.9220121Z               "line": 18
2026-06-07T23:26:20.9220202Z             },
2026-06-07T23:26:20.9220291Z             {
2026-06-07T23:26:20.9220405Z               "path": "crates/spt-daemon/src/shelldisc.rs",
2026-06-07T23:26:20.9220495Z               "line": 63
2026-06-07T23:26:20.9220584Z             },
2026-06-07T23:26:20.9220669Z             {
2026-06-07T23:26:20.9220789Z               "path": "crates/spt-daemon/src/shelldisc.rs",
2026-06-07T23:26:20.9220880Z               "line": 92
2026-06-07T23:26:20.9220965Z             },
2026-06-07T23:26:20.9221046Z             {
2026-06-07T23:26:20.9221162Z               "path": "crates/spt-daemon/src/shelldisc.rs",
2026-06-07T23:26:20.9221256Z               "line": 167
2026-06-07T23:26:20.9221337Z             },
2026-06-07T23:26:20.9221424Z             {
2026-06-07T23:26:20.9221543Z               "path": "crates/spt-daemon/src/shelldisc.rs",
2026-06-07T23:26:20.9221632Z               "line": 179
2026-06-07T23:26:20.9221720Z             },
2026-06-07T23:26:20.9221805Z             {
2026-06-07T23:26:20.9221924Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9222010Z               "line": 114
2026-06-07T23:26:20.9222101Z             },
2026-06-07T23:26:20.9222186Z             {
2026-06-07T23:26:20.9222316Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-07T23:26:20.9222402Z               "line": 22
2026-06-07T23:26:20.9222620Z             },
2026-06-07T23:26:20.9222702Z             {
2026-06-07T23:26:20.9222825Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-07T23:26:20.9222915Z               "line": 129
2026-06-07T23:26:20.9223088Z             },
2026-06-07T23:26:20.9223177Z             {
2026-06-07T23:26:20.9223296Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-07T23:26:20.9223388Z               "line": 156
2026-06-07T23:26:20.9223478Z             },
2026-06-07T23:26:20.9223567Z             {
2026-06-07T23:26:20.9223688Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-07T23:26:20.9223778Z               "line": 178
2026-06-07T23:26:20.9223872Z             },
2026-06-07T23:26:20.9223955Z             {
2026-06-07T23:26:20.9224074Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-07T23:26:20.9224168Z               "line": 203
2026-06-07T23:26:20.9224255Z             },
2026-06-07T23:26:20.9224341Z             {
2026-06-07T23:26:20.9224464Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-07T23:26:20.9224555Z               "line": 229
2026-06-07T23:26:20.9224646Z             },
2026-06-07T23:26:20.9224731Z             {
2026-06-07T23:26:20.9224851Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-07T23:26:20.9224947Z               "line": 252
2026-06-07T23:26:20.9225032Z             },
2026-06-07T23:26:20.9225108Z             {
2026-06-07T23:26:20.9225224Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.9225305Z               "line": 81
2026-06-07T23:26:20.9225379Z             },
2026-06-07T23:26:20.9225470Z             {
2026-06-07T23:26:20.9225572Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9225671Z               "line": 3575
2026-06-07T23:26:20.9225756Z             },
2026-06-07T23:26:20.9225865Z             {
2026-06-07T23:26:20.9226002Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9226091Z               "line": 3698
2026-06-07T23:26:20.9226183Z             },
2026-06-07T23:26:20.9226264Z             {
2026-06-07T23:26:20.9226373Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9226463Z               "line": 3859
2026-06-07T23:26:20.9226551Z             },
2026-06-07T23:26:20.9226646Z             {
2026-06-07T23:26:20.9226745Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9226846Z               "line": 4241
2026-06-07T23:26:20.9226931Z             }
2026-06-07T23:26:20.9227122Z           ]
2026-06-07T23:26:20.9227209Z         },
2026-06-07T23:26:20.9227294Z         "int": {
2026-06-07T23:26:20.9227393Z           "complete": true,
2026-06-07T23:26:20.9227485Z           "evidence": [
2026-06-07T23:26:20.9227570Z             {
2026-06-07T23:26:20.9227698Z               "path": "crates/spt/tests/notify_shell_e2e.rs",
2026-06-07T23:26:20.9227790Z               "line": 16
2026-06-07T23:26:20.9227876Z             },
2026-06-07T23:26:20.9227966Z             {
2026-06-07T23:26:20.9228081Z               "path": "crates/spt/tests/shell_e2e.rs",
2026-06-07T23:26:20.9228177Z               "line": 15
2026-06-07T23:26:20.9228265Z             }
2026-06-07T23:26:20.9228351Z           ]
2026-06-07T23:26:20.9228437Z         },
2026-06-07T23:26:20.9228522Z         "unit": {
2026-06-07T23:26:20.9228625Z           "complete": true,
2026-06-07T23:26:20.9228715Z           "evidence": [
2026-06-07T23:26:20.9228802Z             {
2026-06-07T23:26:20.9228916Z               "path": "crates/spt-daemon/src/shelldisc.rs",
2026-06-07T23:26:20.9229006Z               "line": 246
2026-06-07T23:26:20.9229093Z             },
2026-06-07T23:26:20.9229183Z             {
2026-06-07T23:26:20.9229302Z               "path": "crates/spt-daemon/src/shelldisc.rs",
2026-06-07T23:26:20.9229393Z               "line": 306
2026-06-07T23:26:20.9229479Z             },
2026-06-07T23:26:20.9229564Z             {
2026-06-07T23:26:20.9229679Z               "path": "crates/spt-daemon/src/shelldisc.rs",
2026-06-07T23:26:20.9229775Z               "line": 362
2026-06-07T23:26:20.9229969Z             },
2026-06-07T23:26:20.9230062Z             {
2026-06-07T23:26:20.9230184Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-07T23:26:20.9230275Z               "line": 268
2026-06-07T23:26:20.9230451Z             },
2026-06-07T23:26:20.9230532Z             {
2026-06-07T23:26:20.9230653Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-07T23:26:20.9230743Z               "line": 291
2026-06-07T23:26:20.9230837Z             },
2026-06-07T23:26:20.9230922Z             {
2026-06-07T23:26:20.9231042Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.9231135Z               "line": 491
2026-06-07T23:26:20.9231225Z             },
2026-06-07T23:26:20.9231316Z             {
2026-06-07T23:26:20.9231422Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9231511Z               "line": 5023
2026-06-07T23:26:20.9231602Z             },
2026-06-07T23:26:20.9231688Z             {
2026-06-07T23:26:20.9231797Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9231892Z               "line": 5147
2026-06-07T23:26:20.9231980Z             },
2026-06-07T23:26:20.9232065Z             {
2026-06-07T23:26:20.9232164Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9232265Z               "line": 5734
2026-06-07T23:26:20.9232346Z             },
2026-06-07T23:26:20.9232437Z             {
2026-06-07T23:26:20.9232541Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9232633Z               "line": 5799
2026-06-07T23:26:20.9232723Z             }
2026-06-07T23:26:20.9232804Z           ]
2026-06-07T23:26:20.9232890Z         }
2026-06-07T23:26:20.9232976Z       }
2026-06-07T23:26:20.9233061Z     },
2026-06-07T23:26:20.9233151Z     {
2026-06-07T23:26:20.9233253Z       "id": "REQ-FRONT-1",
2026-06-07T23:26:20.9233427Z       "title": "Day-one launcher/manager frontend (list/launch/attach/init)",
2026-06-07T23:26:20.9233520Z       "requiredStages": [],
2026-06-07T23:26:20.9233610Z       "stages": {
2026-06-07T23:26:20.9233704Z         "doc": {
2026-06-07T23:26:20.9233803Z           "complete": false,
2026-06-07T23:26:20.9233890Z           "evidence": []
2026-06-07T23:26:20.9233981Z         },
2026-06-07T23:26:20.9234076Z         "impl": {
2026-06-07T23:26:20.9234171Z           "complete": false,
2026-06-07T23:26:20.9234267Z           "evidence": []
2026-06-07T23:26:20.9234357Z         },
2026-06-07T23:26:20.9234442Z         "int": {
2026-06-07T23:26:20.9234534Z           "complete": false,
2026-06-07T23:26:20.9234629Z           "evidence": []
2026-06-07T23:26:20.9234715Z         },
2026-06-07T23:26:20.9234800Z         "unit": {
2026-06-07T23:26:20.9234897Z           "complete": false,
2026-06-07T23:26:20.9234982Z           "evidence": []
2026-06-07T23:26:20.9235071Z         }
2026-06-07T23:26:20.9235154Z       }
2026-06-07T23:26:20.9235240Z     },
2026-06-07T23:26:20.9235325Z     {
2026-06-07T23:26:20.9235440Z       "id": "REQ-HAZARD-CASCADE-WIPE-GUARD",
2026-06-07T23:26:20.9235611Z       "title": "No hard-delete of a parent hosting non-empty children (6.3)",
2026-06-07T23:26:20.9235706Z       "requiredStages": [
2026-06-07T23:26:20.9235799Z         "impl",
2026-06-07T23:26:20.9235884Z         "unit"
2026-06-07T23:26:20.9235972Z       ],
2026-06-07T23:26:20.9236065Z       "stages": {
2026-06-07T23:26:20.9236151Z         "doc": {
2026-06-07T23:26:20.9236249Z           "complete": false,
2026-06-07T23:26:20.9236339Z           "evidence": []
2026-06-07T23:26:20.9236425Z         },
2026-06-07T23:26:20.9236511Z         "impl": {
2026-06-07T23:26:20.9236609Z           "complete": true,
2026-06-07T23:26:20.9236704Z           "evidence": [
2026-06-07T23:26:20.9236786Z             {
2026-06-07T23:26:20.9236915Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.9237558Z               "line": 149
2026-06-07T23:26:20.9237653Z             },
2026-06-07T23:26:20.9237740Z             {
2026-06-07T23:26:20.9237854Z               "path": "crates/spt/src/api/worker.rs",
2026-06-07T23:26:20.9238050Z               "line": 18
2026-06-07T23:26:20.9238140Z             },
2026-06-07T23:26:20.9238226Z             {
2026-06-07T23:26:20.9238336Z               "path": "crates/spt/src/api/worker.rs",
2026-06-07T23:26:20.9238431Z               "line": 98
2026-06-07T23:26:20.9238602Z             }
2026-06-07T23:26:20.9238689Z           ]
2026-06-07T23:26:20.9238774Z         },
2026-06-07T23:26:20.9238859Z         "int": {
2026-06-07T23:26:20.9238963Z           "complete": false,
2026-06-07T23:26:20.9239054Z           "evidence": []
2026-06-07T23:26:20.9239138Z         },
2026-06-07T23:26:20.9239228Z         "unit": {
2026-06-07T23:26:20.9239323Z           "complete": true,
2026-06-07T23:26:20.9239414Z           "evidence": [
2026-06-07T23:26:20.9239504Z             {
2026-06-07T23:26:20.9239624Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.9239715Z               "line": 565
2026-06-07T23:26:20.9239805Z             },
2026-06-07T23:26:20.9239891Z             {
2026-06-07T23:26:20.9240011Z               "path": "crates/spt/src/api/worker.rs",
2026-06-07T23:26:20.9240106Z               "line": 159
2026-06-07T23:26:20.9240191Z             },
2026-06-07T23:26:20.9240278Z             {
2026-06-07T23:26:20.9240387Z               "path": "crates/spt/src/api/worker.rs",
2026-06-07T23:26:20.9240486Z               "line": 231
2026-06-07T23:26:20.9240569Z             }
2026-06-07T23:26:20.9240645Z           ]
2026-06-07T23:26:20.9240734Z         }
2026-06-07T23:26:20.9240816Z       }
2026-06-07T23:26:20.9240903Z     },
2026-06-07T23:26:20.9240988Z     {
2026-06-07T23:26:20.9241130Z       "id": "REQ-HAZARD-CHILD-CONSOLE-FLASH",
2026-06-07T23:26:20.9241525Z       "title": "Console-subsystem children of the console-less daemon spawn with CREATE_NO_WINDOW, or each spawn flashes a visible blank window on the user's desktop (5.8)",
2026-06-07T23:26:20.9241625Z       "requiredStages": [
2026-06-07T23:26:20.9241719Z         "impl",
2026-06-07T23:26:20.9241804Z         "unit"
2026-06-07T23:26:20.9241900Z       ],
2026-06-07T23:26:20.9241987Z       "stages": {
2026-06-07T23:26:20.9242081Z         "doc": {
2026-06-07T23:26:20.9242172Z           "complete": true,
2026-06-07T23:26:20.9242267Z           "evidence": [
2026-06-07T23:26:20.9242357Z             {
2026-06-07T23:26:20.9242467Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-07T23:26:20.9242559Z               "line": 217
2026-06-07T23:26:20.9242644Z             }
2026-06-07T23:26:20.9242734Z           ]
2026-06-07T23:26:20.9242816Z         },
2026-06-07T23:26:20.9242906Z         "impl": {
2026-06-07T23:26:20.9242997Z           "complete": true,
2026-06-07T23:26:20.9243087Z           "evidence": [
2026-06-07T23:26:20.9243179Z             {
2026-06-07T23:26:20.9243301Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-07T23:26:20.9243392Z               "line": 302
2026-06-07T23:26:20.9243474Z             },
2026-06-07T23:26:20.9243569Z             {
2026-06-07T23:26:20.9243693Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-07T23:26:20.9243784Z               "line": 257
2026-06-07T23:26:20.9243874Z             },
2026-06-07T23:26:20.9243959Z             {
2026-06-07T23:26:20.9244080Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-07T23:26:20.9244175Z               "line": 405
2026-06-07T23:26:20.9244259Z             },
2026-06-07T23:26:20.9244349Z             {
2026-06-07T23:26:20.9244460Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-07T23:26:20.9244560Z               "line": 77
2026-06-07T23:26:20.9244640Z             }
2026-06-07T23:26:20.9244726Z           ]
2026-06-07T23:26:20.9244818Z         },
2026-06-07T23:26:20.9244898Z         "int": {
2026-06-07T23:26:20.9244997Z           "complete": false,
2026-06-07T23:26:20.9245085Z           "evidence": []
2026-06-07T23:26:20.9245170Z         },
2026-06-07T23:26:20.9245255Z         "unit": {
2026-06-07T23:26:20.9245351Z           "complete": true,
2026-06-07T23:26:20.9245442Z           "evidence": [
2026-06-07T23:26:20.9245604Z             {
2026-06-07T23:26:20.9245724Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-07T23:26:20.9245814Z               "line": 478
2026-06-07T23:26:20.9245899Z             },
2026-06-07T23:26:20.9245985Z             {
2026-06-07T23:26:20.9246190Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-07T23:26:20.9246281Z               "line": 516
2026-06-07T23:26:20.9246363Z             },
2026-06-07T23:26:20.9246453Z             {
2026-06-07T23:26:20.9246567Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-07T23:26:20.9246654Z               "line": 166
2026-06-07T23:26:20.9246739Z             }
2026-06-07T23:26:20.9246824Z           ]
2026-06-07T23:26:20.9246909Z         }
2026-06-07T23:26:20.9247076Z       }
2026-06-07T23:26:20.9247160Z     },
2026-06-07T23:26:20.9247240Z     {
2026-06-07T23:26:20.9247356Z       "id": "REQ-HAZARD-CONFLICT-BOTH-PRESERVED",
2026-06-07T23:26:20.9247889Z       "title": "A surfaced concurrent context pair is durably preserved (both versions, tracked artifacts) until a strictly dominating write clears it; no reconcile failure path discards an unmerged version (6.6, ADR-0013)",
2026-06-07T23:26:20.9248023Z       "requiredStages": [
2026-06-07T23:26:20.9248118Z         "impl",
2026-06-07T23:26:20.9248204Z         "unit"
2026-06-07T23:26:20.9248290Z       ],
2026-06-07T23:26:20.9248376Z       "stages": {
2026-06-07T23:26:20.9248504Z         "doc": {
2026-06-07T23:26:20.9248601Z           "complete": false,
2026-06-07T23:26:20.9248695Z           "evidence": []
2026-06-07T23:26:20.9248791Z         },
2026-06-07T23:26:20.9248872Z         "impl": {
2026-06-07T23:26:20.9248973Z           "complete": true,
2026-06-07T23:26:20.9249061Z           "evidence": [
2026-06-07T23:26:20.9249196Z             {
2026-06-07T23:26:20.9249330Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-07T23:26:20.9249428Z               "line": 22
2026-06-07T23:26:20.9249523Z             },
2026-06-07T23:26:20.9249609Z             {
2026-06-07T23:26:20.9249731Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-07T23:26:20.9249826Z               "line": 476
2026-06-07T23:26:20.9249913Z             },
2026-06-07T23:26:20.9249994Z             {
2026-06-07T23:26:20.9250117Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-07T23:26:20.9250208Z               "line": 17
2026-06-07T23:26:20.9250289Z             },
2026-06-07T23:26:20.9250375Z             {
2026-06-07T23:26:20.9250494Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-07T23:26:20.9250585Z               "line": 140
2026-06-07T23:26:20.9250666Z             },
2026-06-07T23:26:20.9250756Z             {
2026-06-07T23:26:20.9250876Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:20.9250966Z               "line": 194
2026-06-07T23:26:20.9251051Z             },
2026-06-07T23:26:20.9251134Z             {
2026-06-07T23:26:20.9251257Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:20.9251352Z               "line": 219
2026-06-07T23:26:20.9251433Z             },
2026-06-07T23:26:20.9251525Z             {
2026-06-07T23:26:20.9251643Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:20.9251734Z               "line": 245
2026-06-07T23:26:20.9251821Z             },
2026-06-07T23:26:20.9251905Z             {
2026-06-07T23:26:20.9252023Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-07T23:26:20.9252114Z               "line": 124
2026-06-07T23:26:20.9252204Z             },
2026-06-07T23:26:20.9252288Z             {
2026-06-07T23:26:20.9252402Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-07T23:26:20.9252494Z               "line": 224
2026-06-07T23:26:20.9252579Z             }
2026-06-07T23:26:20.9252670Z           ]
2026-06-07T23:26:20.9252751Z         },
2026-06-07T23:26:20.9252837Z         "int": {
2026-06-07T23:26:20.9252927Z           "complete": false,
2026-06-07T23:26:20.9253022Z           "evidence": []
2026-06-07T23:26:20.9253209Z         },
2026-06-07T23:26:20.9253299Z         "unit": {
2026-06-07T23:26:20.9253395Z           "complete": true,
2026-06-07T23:26:20.9253480Z           "evidence": [
2026-06-07T23:26:20.9253566Z             {
2026-06-07T23:26:20.9253777Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-07T23:26:20.9253866Z               "line": 62
2026-06-07T23:26:20.9253948Z             },
2026-06-07T23:26:20.9254034Z             {
2026-06-07T23:26:20.9254152Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-07T23:26:20.9254238Z               "line": 72
2026-06-07T23:26:20.9254325Z             },
2026-06-07T23:26:20.9254407Z             {
2026-06-07T23:26:20.9254529Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-07T23:26:20.9254615Z               "line": 84
2026-06-07T23:26:20.9254703Z             },
2026-06-07T23:26:20.9254791Z             {
2026-06-07T23:26:20.9254904Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-07T23:26:20.9255000Z               "line": 337
2026-06-07T23:26:20.9255087Z             },
2026-06-07T23:26:20.9255181Z             {
2026-06-07T23:26:20.9255296Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-07T23:26:20.9255387Z               "line": 274
2026-06-07T23:26:20.9255477Z             },
2026-06-07T23:26:20.9255562Z             {
2026-06-07T23:26:20.9255678Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-07T23:26:20.9255764Z               "line": 315
2026-06-07T23:26:20.9255854Z             },
2026-06-07T23:26:20.9255940Z             {
2026-06-07T23:26:20.9256054Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-07T23:26:20.9256149Z               "line": 353
2026-06-07T23:26:20.9256236Z             },
2026-06-07T23:26:20.9256326Z             {
2026-06-07T23:26:20.9256445Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:20.9258602Z               "line": 656
2026-06-07T23:26:20.9258702Z             },
2026-06-07T23:26:20.9258802Z             {
2026-06-07T23:26:20.9258950Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-07T23:26:20.9259045Z               "line": 397
2026-06-07T23:26:20.9259136Z             },
2026-06-07T23:26:20.9259218Z             {
2026-06-07T23:26:20.9259351Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-07T23:26:20.9259437Z               "line": 440
2026-06-07T23:26:20.9259528Z             }
2026-06-07T23:26:20.9259608Z           ]
2026-06-07T23:26:20.9259689Z         }
2026-06-07T23:26:20.9259776Z       }
2026-06-07T23:26:20.9259857Z     },
2026-06-07T23:26:20.9259941Z     {
2026-06-07T23:26:20.9260055Z       "id": "REQ-HAZARD-CONPTY-DSR",
2026-06-07T23:26:20.9260268Z       "title": "ConPTY reader must auto-answer DSR (ESC[6n) or all child output stalls (5.5)",
2026-06-07T23:26:20.9260362Z       "requiredStages": [
2026-06-07T23:26:20.9260453Z         "impl",
2026-06-07T23:26:20.9260534Z         "unit"
2026-06-07T23:26:20.9260620Z       ],
2026-06-07T23:26:20.9260710Z       "stages": {
2026-06-07T23:26:20.9260802Z         "doc": {
2026-06-07T23:26:20.9260893Z           "complete": false,
2026-06-07T23:26:20.9260987Z           "evidence": []
2026-06-07T23:26:20.9261079Z         },
2026-06-07T23:26:20.9261169Z         "impl": {
2026-06-07T23:26:20.9261264Z           "complete": true,
2026-06-07T23:26:20.9261354Z           "evidence": [
2026-06-07T23:26:20.9261436Z             {
2026-06-07T23:26:20.9261560Z               "path": "crates/spt-term/src/reader.rs",
2026-06-07T23:26:20.9261650Z               "line": 169
2026-06-07T23:26:20.9261732Z             }
2026-06-07T23:26:20.9261817Z           ]
2026-06-07T23:26:20.9261898Z         },
2026-06-07T23:26:20.9261984Z         "int": {
2026-06-07T23:26:20.9262071Z           "complete": true,
2026-06-07T23:26:20.9262169Z           "evidence": [
2026-06-07T23:26:20.9262250Z             {
2026-06-07T23:26:20.9262362Z               "path": "crates/spt-term/tests/dsr.rs",
2026-06-07T23:26:20.9262452Z               "line": 44
2026-06-07T23:26:20.9262665Z             },
2026-06-07T23:26:20.9262750Z             {
2026-06-07T23:26:20.9262858Z               "path": "crates/spt-term/tests/dsr.rs",
2026-06-07T23:26:20.9262948Z               "line": 66
2026-06-07T23:26:20.9263040Z             }
2026-06-07T23:26:20.9263206Z           ]
2026-06-07T23:26:20.9263292Z         },
2026-06-07T23:26:20.9263374Z         "unit": {
2026-06-07T23:26:20.9263473Z           "complete": true,
2026-06-07T23:26:20.9263563Z           "evidence": [
2026-06-07T23:26:20.9263645Z             {
2026-06-07T23:26:20.9263754Z               "path": "crates/spt-term/src/reader.rs",
2026-06-07T23:26:20.9263840Z               "line": 186
2026-06-07T23:26:20.9263926Z             },
2026-06-07T23:26:20.9264008Z             {
2026-06-07T23:26:20.9264117Z               "path": "crates/spt-term/src/reader.rs",
2026-06-07T23:26:20.9264207Z               "line": 238
2026-06-07T23:26:20.9264294Z             },
2026-06-07T23:26:20.9264379Z             {
2026-06-07T23:26:20.9264488Z               "path": "crates/spt-term/src/reader.rs",
2026-06-07T23:26:20.9264585Z               "line": 266
2026-06-07T23:26:20.9264666Z             }
2026-06-07T23:26:20.9264750Z           ]
2026-06-07T23:26:20.9264837Z         }
2026-06-07T23:26:20.9264924Z       }
2026-06-07T23:26:20.9265013Z     },
2026-06-07T23:26:20.9265093Z     {
2026-06-07T23:26:20.9265219Z       "id": "REQ-HAZARD-DAEMON-HOSTED-LIVENESS",
2026-06-07T23:26:20.9265618Z       "title": "Daemon-hosted perches (Psyche, spt-hosted Self) derive liveness from the daemon endpoint table + info.json status, never is_process_alive(info.pid) (2.5)",
2026-06-07T23:26:20.9265713Z       "requiredStages": [
2026-06-07T23:26:20.9265798Z         "impl",
2026-06-07T23:26:20.9265885Z         "unit",
2026-06-07T23:26:20.9265966Z         "int"
2026-06-07T23:26:20.9266056Z       ],
2026-06-07T23:26:20.9266142Z       "stages": {
2026-06-07T23:26:20.9266224Z         "doc": {
2026-06-07T23:26:20.9266319Z           "complete": false,
2026-06-07T23:26:20.9266414Z           "evidence": []
2026-06-07T23:26:20.9266500Z         },
2026-06-07T23:26:20.9266591Z         "impl": {
2026-06-07T23:26:20.9266681Z           "complete": true,
2026-06-07T23:26:20.9266771Z           "evidence": [
2026-06-07T23:26:20.9266859Z             {
2026-06-07T23:26:20.9267086Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9267183Z               "line": 150
2026-06-07T23:26:20.9267263Z             },
2026-06-07T23:26:20.9267348Z             {
2026-06-07T23:26:20.9267464Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9267559Z               "line": 174
2026-06-07T23:26:20.9267644Z             },
2026-06-07T23:26:20.9267730Z             {
2026-06-07T23:26:20.9267841Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-07T23:26:20.9267929Z               "line": 79
2026-06-07T23:26:20.9268015Z             },
2026-06-07T23:26:20.9268096Z             {
2026-06-07T23:26:20.9268205Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-07T23:26:20.9268299Z               "line": 51
2026-06-07T23:26:20.9268384Z             },
2026-06-07T23:26:20.9268466Z             {
2026-06-07T23:26:20.9268576Z               "path": "crates/spt-store/src/info.rs",
2026-06-07T23:26:20.9268670Z               "line": 154
2026-06-07T23:26:20.9268747Z             },
2026-06-07T23:26:20.9268838Z             {
2026-06-07T23:26:20.9268956Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-07T23:26:20.9269043Z               "line": 27
2026-06-07T23:26:20.9269134Z             },
2026-06-07T23:26:20.9269219Z             {
2026-06-07T23:26:20.9269328Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-07T23:26:20.9269416Z               "line": 79
2026-06-07T23:26:20.9269505Z             },
2026-06-07T23:26:20.9269577Z             {
2026-06-07T23:26:20.9269682Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-07T23:26:20.9269778Z               "line": 102
2026-06-07T23:26:20.9269858Z             },
2026-06-07T23:26:20.9270046Z             {
2026-06-07T23:26:20.9270163Z               "path": "crates/spt-store/src/registry.rs",
2026-06-07T23:26:20.9270254Z               "line": 116
2026-06-07T23:26:20.9270336Z             }
2026-06-07T23:26:20.9270417Z           ]
2026-06-07T23:26:20.9270591Z         },
2026-06-07T23:26:20.9270673Z         "int": {
2026-06-07T23:26:20.9270767Z           "complete": true,
2026-06-07T23:26:20.9270856Z           "evidence": [
2026-06-07T23:26:20.9270942Z             {
2026-06-07T23:26:20.9271071Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-07T23:26:20.9271161Z               "line": 35
2026-06-07T23:26:20.9271246Z             }
2026-06-07T23:26:20.9271324Z           ]
2026-06-07T23:26:20.9271410Z         },
2026-06-07T23:26:20.9271490Z         "unit": {
2026-06-07T23:26:20.9271581Z           "complete": true,
2026-06-07T23:26:20.9271672Z           "evidence": [
2026-06-07T23:26:20.9271757Z             {
2026-06-07T23:26:20.9271881Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9271972Z               "line": 584
2026-06-07T23:26:20.9272063Z             },
2026-06-07T23:26:20.9272139Z             {
2026-06-07T23:26:20.9272249Z               "path": "crates/spt-store/src/info.rs",
2026-06-07T23:26:20.9272349Z               "line": 351
2026-06-07T23:26:20.9272434Z             },
2026-06-07T23:26:20.9272515Z             {
2026-06-07T23:26:20.9272626Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-07T23:26:20.9272720Z               "line": 124
2026-06-07T23:26:20.9272801Z             },
2026-06-07T23:26:20.9272888Z             {
2026-06-07T23:26:20.9273003Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-07T23:26:20.9273091Z               "line": 143
2026-06-07T23:26:20.9273172Z             },
2026-06-07T23:26:20.9273253Z             {
2026-06-07T23:26:20.9273371Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-07T23:26:20.9273451Z               "line": 160
2026-06-07T23:26:20.9273542Z             },
2026-06-07T23:26:20.9273628Z             {
2026-06-07T23:26:20.9273737Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-07T23:26:20.9273827Z               "line": 187
2026-06-07T23:26:20.9273910Z             },
2026-06-07T23:26:20.9274001Z             {
2026-06-07T23:26:20.9274109Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-07T23:26:20.9274200Z               "line": 206
2026-06-07T23:26:20.9274286Z             },
2026-06-07T23:26:20.9274367Z             {
2026-06-07T23:26:20.9274476Z               "path": "crates/spt-store/src/registry.rs",
2026-06-07T23:26:20.9274563Z               "line": 229
2026-06-07T23:26:20.9274648Z             }
2026-06-07T23:26:20.9274724Z           ]
2026-06-07T23:26:20.9274811Z         }
2026-06-07T23:26:20.9274897Z       }
2026-06-07T23:26:20.9274981Z     },
2026-06-07T23:26:20.9275063Z     {
2026-06-07T23:26:20.9275183Z       "id": "REQ-HAZARD-DAEMON-SCHED-NONBLOCKING",
2026-06-07T23:26:20.9275784Z       "title": "Per-agent pulse/psyche/echo-commune scheduling must not serialize across agents: each agent's bounded LLM call (echo-commune summarizer, Psyche turn) runs off the shared scheduler so one slow/hung call cannot stall another agent's tick (7.4)",
2026-06-07T23:26:20.9275888Z       "requiredStages": [
2026-06-07T23:26:20.9275973Z         "impl",
2026-06-07T23:26:20.9276058Z         "unit"
2026-06-07T23:26:20.9276140Z       ],
2026-06-07T23:26:20.9276231Z       "stages": {
2026-06-07T23:26:20.9276311Z         "doc": {
2026-06-07T23:26:20.9276402Z           "complete": false,
2026-06-07T23:26:20.9276493Z           "evidence": []
2026-06-07T23:26:20.9276579Z         },
2026-06-07T23:26:20.9276664Z         "impl": {
2026-06-07T23:26:20.9276750Z           "complete": true,
2026-06-07T23:26:20.9276841Z           "evidence": [
2026-06-07T23:26:20.9276921Z             {
2026-06-07T23:26:20.9277132Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-07T23:26:20.9277222Z               "line": 222
2026-06-07T23:26:20.9277404Z             },
2026-06-07T23:26:20.9277494Z             {
2026-06-07T23:26:20.9277608Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-07T23:26:20.9277700Z               "line": 389
2026-06-07T23:26:20.9277776Z             }
2026-06-07T23:26:20.9277966Z           ]
2026-06-07T23:26:20.9278048Z         },
2026-06-07T23:26:20.9278128Z         "int": {
2026-06-07T23:26:20.9278218Z           "complete": false,
2026-06-07T23:26:20.9278305Z           "evidence": []
2026-06-07T23:26:20.9278392Z         },
2026-06-07T23:26:20.9278471Z         "unit": {
2026-06-07T23:26:20.9278561Z           "complete": true,
2026-06-07T23:26:20.9278651Z           "evidence": [
2026-06-07T23:26:20.9278732Z             {
2026-06-07T23:26:20.9278854Z               "path": "crates/spt-daemon/tests/shellchan.rs",
2026-06-07T23:26:20.9278944Z               "line": 161
2026-06-07T23:26:20.9279026Z             }
2026-06-07T23:26:20.9279108Z           ]
2026-06-07T23:26:20.9279188Z         }
2026-06-07T23:26:20.9279279Z       }
2026-06-07T23:26:20.9279360Z     },
2026-06-07T23:26:20.9279441Z     {
2026-06-07T23:26:20.9279550Z       "id": "REQ-HAZARD-DEFERRED-DRAIN",
2026-06-07T23:26:20.9279722Z       "title": "Deferred spool rows excluded from the event-stream drain (1.4)",
2026-06-07T23:26:20.9279822Z       "requiredStages": [
2026-06-07T23:26:20.9279908Z         "impl",
2026-06-07T23:26:20.9279995Z         "unit"
2026-06-07T23:26:20.9280075Z       ],
2026-06-07T23:26:20.9280160Z       "stages": {
2026-06-07T23:26:20.9280242Z         "doc": {
2026-06-07T23:26:20.9280333Z           "complete": false,
2026-06-07T23:26:20.9280423Z           "evidence": []
2026-06-07T23:26:20.9280504Z         },
2026-06-07T23:26:20.9280591Z         "impl": {
2026-06-07T23:26:20.9280676Z           "complete": true,
2026-06-07T23:26:20.9280766Z           "evidence": [
2026-06-07T23:26:20.9280847Z             {
2026-06-07T23:26:20.9280958Z               "path": "crates/spt-store/src/spool.rs",
2026-06-07T23:26:20.9281042Z               "line": 40
2026-06-07T23:26:20.9281132Z             },
2026-06-07T23:26:20.9281218Z             {
2026-06-07T23:26:20.9281327Z               "path": "crates/spt-store/src/spool.rs",
2026-06-07T23:26:20.9281416Z               "line": 100
2026-06-07T23:26:20.9281502Z             },
2026-06-07T23:26:20.9281583Z             {
2026-06-07T23:26:20.9281688Z               "path": "crates/spt-store/src/spool.rs",
2026-06-07T23:26:20.9281778Z               "line": 215
2026-06-07T23:26:20.9281864Z             },
2026-06-07T23:26:20.9281946Z             {
2026-06-07T23:26:20.9282055Z               "path": "crates/spt-store/src/spool.rs",
2026-06-07T23:26:20.9282141Z               "line": 314
2026-06-07T23:26:20.9282227Z             }
2026-06-07T23:26:20.9282308Z           ]
2026-06-07T23:26:20.9282389Z         },
2026-06-07T23:26:20.9282479Z         "int": {
2026-06-07T23:26:20.9282566Z           "complete": false,
2026-06-07T23:26:20.9282656Z           "evidence": []
2026-06-07T23:26:20.9282737Z         },
2026-06-07T23:26:20.9282829Z         "unit": {
2026-06-07T23:26:20.9282919Z           "complete": true,
2026-06-07T23:26:20.9283009Z           "evidence": [
2026-06-07T23:26:20.9283090Z             {
2026-06-07T23:26:20.9283200Z               "path": "crates/spt-store/src/spool.rs",
2026-06-07T23:26:20.9283295Z               "line": 352
2026-06-07T23:26:20.9283371Z             },
2026-06-07T23:26:20.9283458Z             {
2026-06-07T23:26:20.9283563Z               "path": "crates/spt-store/src/spool.rs",
2026-06-07T23:26:20.9283651Z               "line": 409
2026-06-07T23:26:20.9283737Z             },
2026-06-07T23:26:20.9283813Z             {
2026-06-07T23:26:20.9283922Z               "path": "crates/spt-store/src/spool.rs",
2026-06-07T23:26:20.9284006Z               "line": 458
2026-06-07T23:26:20.9284092Z             },
2026-06-07T23:26:20.9284170Z             {
2026-06-07T23:26:20.9284279Z               "path": "crates/spt-store/src/spool.rs",
2026-06-07T23:26:20.9284369Z               "line": 479
2026-06-07T23:26:20.9284522Z             }
2026-06-07T23:26:20.9284608Z           ]
2026-06-07T23:26:20.9284688Z         }
2026-06-07T23:26:20.9284770Z       }
2026-06-07T23:26:20.9284851Z     },
2026-06-07T23:26:20.9284932Z     {
2026-06-07T23:26:20.9285051Z       "id": "REQ-HAZARD-DEFERRED-SURVIVE-DRAIN",
2026-06-07T23:26:20.9285242Z       "title": "Deferred rows survive poll drain (4.4)",
2026-06-07T23:26:20.9285337Z       "requiredStages": [
2026-06-07T23:26:20.9285419Z         "impl",
2026-06-07T23:26:20.9285509Z         "unit"
2026-06-07T23:26:20.9285590Z       ],
2026-06-07T23:26:20.9285676Z       "stages": {
2026-06-07T23:26:20.9285767Z         "doc": {
2026-06-07T23:26:20.9285856Z           "complete": false,
2026-06-07T23:26:20.9285942Z           "evidence": []
2026-06-07T23:26:20.9286025Z         },
2026-06-07T23:26:20.9286110Z         "impl": {
2026-06-07T23:26:20.9286199Z           "complete": true,
2026-06-07T23:26:20.9286286Z           "evidence": [
2026-06-07T23:26:20.9286373Z             {
2026-06-07T23:26:20.9286486Z               "path": "crates/spt-store/src/spool.rs",
2026-06-07T23:26:20.9286576Z               "line": 113
2026-06-07T23:26:20.9286657Z             },
2026-06-07T23:26:20.9286743Z             {
2026-06-07T23:26:20.9286847Z               "path": "crates/spt-store/src/spool.rs",
2026-06-07T23:26:20.9287035Z               "line": 208
2026-06-07T23:26:20.9287125Z             }
2026-06-07T23:26:20.9287205Z           ]
2026-06-07T23:26:20.9287286Z         },
2026-06-07T23:26:20.9287373Z         "int": {
2026-06-07T23:26:20.9287468Z           "complete": false,
2026-06-07T23:26:20.9287553Z           "evidence": []
2026-06-07T23:26:20.9287635Z         },
2026-06-07T23:26:20.9287720Z         "unit": {
2026-06-07T23:26:20.9287806Z           "complete": true,
2026-06-07T23:26:20.9287896Z           "evidence": [
2026-06-07T23:26:20.9287979Z             {
2026-06-07T23:26:20.9288087Z               "path": "crates/spt-store/src/spool.rs",
2026-06-07T23:26:20.9288173Z               "line": 373
2026-06-07T23:26:20.9288260Z             },
2026-06-07T23:26:20.9288346Z             {
2026-06-07T23:26:20.9288454Z               "path": "crates/spt-store/src/spool.rs",
2026-06-07T23:26:20.9288540Z               "line": 436
2026-06-07T23:26:20.9288627Z             }
2026-06-07T23:26:20.9288716Z           ]
2026-06-07T23:26:20.9288797Z         }
2026-06-07T23:26:20.9288880Z       }
2026-06-07T23:26:20.9288962Z     },
2026-06-07T23:26:20.9289045Z     {
2026-06-07T23:26:20.9289163Z       "id": "REQ-HAZARD-DETACHED-PIPE-INHERIT",
2026-06-07T23:26:20.9290258Z       "title": "Windows detached long-lived children must not inherit a captured caller's pipe: every detach-spawn of an immortal child (daemon, shell binary) runs bInheritHandles=FALSE, or a caller capturing output anywhere up the process chain hangs forever on a pipe that never EOFs — std-handle flag stripping is NOT sufficient (grandparent strays still flow) (5.6)",
2026-06-07T23:26:20.9290349Z       "requiredStages": [
2026-06-07T23:26:20.9290425Z         "impl",
2026-06-07T23:26:20.9290507Z         "unit"
2026-06-07T23:26:20.9290592Z       ],
2026-06-07T23:26:20.9290678Z       "stages": {
2026-06-07T23:26:20.9290763Z         "doc": {
2026-06-07T23:26:20.9290856Z           "complete": true,
2026-06-07T23:26:20.9290945Z           "evidence": [
2026-06-07T23:26:20.9291040Z             {
2026-06-07T23:26:20.9291156Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-07T23:26:20.9291245Z               "line": 203
2026-06-07T23:26:20.9291331Z             }
2026-06-07T23:26:20.9291417Z           ]
2026-06-07T23:26:20.9291500Z         },
2026-06-07T23:26:20.9291593Z         "impl": {
2026-06-07T23:26:20.9291683Z           "complete": true,
2026-06-07T23:26:20.9291773Z           "evidence": [
2026-06-07T23:26:20.9291854Z             {
2026-06-07T23:26:20.9291972Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-07T23:26:20.9292062Z               "line": 399
2026-06-07T23:26:20.9292144Z             },
2026-06-07T23:26:20.9292234Z             {
2026-06-07T23:26:20.9292449Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-07T23:26:20.9292535Z               "line": 491
2026-06-07T23:26:20.9292620Z             },
2026-06-07T23:26:20.9292706Z             {
2026-06-07T23:26:20.9292825Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-07T23:26:20.9293001Z               "line": 183
2026-06-07T23:26:20.9293084Z             }
2026-06-07T23:26:20.9293168Z           ]
2026-06-07T23:26:20.9293249Z         },
2026-06-07T23:26:20.9293335Z         "int": {
2026-06-07T23:26:20.9293422Z           "complete": false,
2026-06-07T23:26:20.9293521Z           "evidence": []
2026-06-07T23:26:20.9293602Z         },
2026-06-07T23:26:20.9293693Z         "unit": {
2026-06-07T23:26:20.9293789Z           "complete": true,
2026-06-07T23:26:20.9293874Z           "evidence": [
2026-06-07T23:26:20.9293964Z             {
2026-06-07T23:26:20.9294075Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-07T23:26:20.9294169Z               "line": 529
2026-06-07T23:26:20.9294254Z             },
2026-06-07T23:26:20.9294340Z             {
2026-06-07T23:26:20.9294463Z               "path": "crates/spt/tests/notify_shell_e2e.rs",
2026-06-07T23:26:20.9294547Z               "line": 44
2026-06-07T23:26:20.9294633Z             },
2026-06-07T23:26:20.9294725Z             {
2026-06-07T23:26:20.9294834Z               "path": "crates/spt/tests/shell_e2e.rs",
2026-06-07T23:26:20.9294924Z               "line": 54
2026-06-07T23:26:20.9295006Z             },
2026-06-07T23:26:20.9295092Z             {
2026-06-07T23:26:20.9295219Z               "path": "crates/spt/tests/shell_sleepwake_e2e.rs",
2026-06-07T23:26:20.9295306Z               "line": 51
2026-06-07T23:26:20.9295392Z             }
2026-06-07T23:26:20.9295473Z           ]
2026-06-07T23:26:20.9295563Z         }
2026-06-07T23:26:20.9295645Z       }
2026-06-07T23:26:20.9295726Z     },
2026-06-07T23:26:20.9295812Z     {
2026-06-07T23:26:20.9295936Z       "id": "REQ-HAZARD-DIRECT-WRITE-PRECEDENCE",
2026-06-07T23:26:20.9296141Z       "title": "Direct-write precedence marker (with node id) guards stale overwrite (6.5)",
2026-06-07T23:26:20.9296251Z       "requiredStages": [
2026-06-07T23:26:20.9296341Z         "impl",
2026-06-07T23:26:20.9296421Z         "unit"
2026-06-07T23:26:20.9296512Z       ],
2026-06-07T23:26:20.9296595Z       "stages": {
2026-06-07T23:26:20.9296685Z         "doc": {
2026-06-07T23:26:20.9296773Z           "complete": false,
2026-06-07T23:26:20.9296866Z           "evidence": []
2026-06-07T23:26:20.9297041Z         },
2026-06-07T23:26:20.9297121Z         "impl": {
2026-06-07T23:26:20.9297217Z           "complete": true,
2026-06-07T23:26:20.9297303Z           "evidence": [
2026-06-07T23:26:20.9297389Z             {
2026-06-07T23:26:20.9297507Z               "path": "crates/spt-live/src/context.rs",
2026-06-07T23:26:20.9297595Z               "line": 26
2026-06-07T23:26:20.9297685Z             },
2026-06-07T23:26:20.9297765Z             {
2026-06-07T23:26:20.9297885Z               "path": "crates/spt-live/src/context.rs",
2026-06-07T23:26:20.9297980Z               "line": 135
2026-06-07T23:26:20.9298065Z             },
2026-06-07T23:26:20.9298146Z             {
2026-06-07T23:26:20.9298276Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-07T23:26:20.9298371Z               "line": 26
2026-06-07T23:26:20.9298452Z             },
2026-06-07T23:26:20.9298534Z             {
2026-06-07T23:26:20.9298652Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-07T23:26:20.9298747Z               "line": 237
2026-06-07T23:26:20.9298834Z             }
2026-06-07T23:26:20.9298920Z           ]
2026-06-07T23:26:20.9299005Z         },
2026-06-07T23:26:20.9299086Z         "int": {
2026-06-07T23:26:20.9299178Z           "complete": false,
2026-06-07T23:26:20.9299267Z           "evidence": []
2026-06-07T23:26:20.9299357Z         },
2026-06-07T23:26:20.9299445Z         "unit": {
2026-06-07T23:26:20.9299545Z           "complete": true,
2026-06-07T23:26:20.9299638Z           "evidence": [
2026-06-07T23:26:20.9299824Z             {
2026-06-07T23:26:20.9299936Z               "path": "crates/spt-live/src/context.rs",
2026-06-07T23:26:20.9300027Z               "line": 161
2026-06-07T23:26:20.9300112Z             },
2026-06-07T23:26:20.9300194Z             {
2026-06-07T23:26:20.9300404Z               "path": "crates/spt-live/src/context.rs",
2026-06-07T23:26:20.9300495Z               "line": 170
2026-06-07T23:26:20.9300580Z             },
2026-06-07T23:26:20.9300661Z             {
2026-06-07T23:26:20.9300772Z               "path": "crates/spt-live/src/context.rs",
2026-06-07T23:26:20.9300866Z               "line": 179
2026-06-07T23:26:20.9300947Z             },
2026-06-07T23:26:20.9301028Z             {
2026-06-07T23:26:20.9301138Z               "path": "crates/spt-live/src/context.rs",
2026-06-07T23:26:20.9301224Z               "line": 190
2026-06-07T23:26:20.9301310Z             },
2026-06-07T23:26:20.9301391Z             {
2026-06-07T23:26:20.9301505Z               "path": "crates/spt-live/src/context.rs",
2026-06-07T23:26:20.9301600Z               "line": 199
2026-06-07T23:26:20.9301687Z             },
2026-06-07T23:26:20.9301773Z             {
2026-06-07T23:26:20.9301882Z               "path": "crates/spt-live/src/context.rs",
2026-06-07T23:26:20.9301967Z               "line": 216
2026-06-07T23:26:20.9302060Z             },
2026-06-07T23:26:20.9302144Z             {
2026-06-07T23:26:20.9302257Z               "path": "crates/spt-live/src/context.rs",
2026-06-07T23:26:20.9302348Z               "line": 242
2026-06-07T23:26:20.9302438Z             },
2026-06-07T23:26:20.9302527Z             {
2026-06-07T23:26:20.9302646Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-07T23:26:20.9302737Z               "line": 257
2026-06-07T23:26:20.9302822Z             },
2026-06-07T23:26:20.9302903Z             {
2026-06-07T23:26:20.9303019Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-07T23:26:20.9303109Z               "line": 244
2026-06-07T23:26:20.9303189Z             },
2026-06-07T23:26:20.9303276Z             {
2026-06-07T23:26:20.9303400Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-07T23:26:20.9303490Z               "line": 265
2026-06-07T23:26:20.9303575Z             },
2026-06-07T23:26:20.9303658Z             {
2026-06-07T23:26:20.9303776Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-07T23:26:20.9303866Z               "line": 293
2026-06-07T23:26:20.9303949Z             },
2026-06-07T23:26:20.9304034Z             {
2026-06-07T23:26:20.9304153Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-07T23:26:20.9304239Z               "line": 317
2026-06-07T23:26:20.9304320Z             },
2026-06-07T23:26:20.9304410Z             {
2026-06-07T23:26:20.9304524Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-07T23:26:20.9304617Z               "line": 327
2026-06-07T23:26:20.9304697Z             },
2026-06-07T23:26:20.9304781Z             {
2026-06-07T23:26:20.9304905Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-07T23:26:20.9305000Z               "line": 540
2026-06-07T23:26:20.9305089Z             }
2026-06-07T23:26:20.9305169Z           ]
2026-06-07T23:26:20.9305256Z         }
2026-06-07T23:26:20.9305338Z       }
2026-06-07T23:26:20.9305423Z     },
2026-06-07T23:26:20.9305503Z     {
2026-06-07T23:26:20.9305623Z       "id": "REQ-HAZARD-DROP-FILE-SINGLE-WRITER",
2026-06-07T23:26:20.9305761Z       "title": "Drop files are daemon-owned single-writer (6.4)",
2026-06-07T23:26:20.9305837Z       "requiredStages": [
2026-06-07T23:26:20.9305924Z         "impl",
2026-06-07T23:26:20.9306009Z         "unit"
2026-06-07T23:26:20.9306094Z       ],
2026-06-07T23:26:20.9306181Z       "stages": {
2026-06-07T23:26:20.9306277Z         "doc": {
2026-06-07T23:26:20.9306405Z           "complete": false,
2026-06-07T23:26:20.9306491Z           "evidence": []
2026-06-07T23:26:20.9306577Z         },
2026-06-07T23:26:20.9306662Z         "impl": {
2026-06-07T23:26:20.9306748Z           "complete": true,
2026-06-07T23:26:20.9306830Z           "evidence": [
2026-06-07T23:26:20.9307091Z             {
2026-06-07T23:26:20.9307212Z               "path": "crates/spt-live/src/echo.rs",
2026-06-07T23:26:20.9307296Z               "line": 25
2026-06-07T23:26:20.9307382Z             },
2026-06-07T23:26:20.9307555Z             {
2026-06-07T23:26:20.9307672Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-07T23:26:20.9307762Z               "line": 26
2026-06-07T23:26:20.9307845Z             },
2026-06-07T23:26:20.9307930Z             {
2026-06-07T23:26:20.9308043Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-07T23:26:20.9308130Z               "line": 159
2026-06-07T23:26:20.9308216Z             }
2026-06-07T23:26:20.9308297Z           ]
2026-06-07T23:26:20.9308382Z         },
2026-06-07T23:26:20.9308465Z         "int": {
2026-06-07T23:26:20.9308555Z           "complete": false,
2026-06-07T23:26:20.9308644Z           "evidence": []
2026-06-07T23:26:20.9308731Z         },
2026-06-07T23:26:20.9308818Z         "unit": {
2026-06-07T23:26:20.9308913Z           "complete": true,
2026-06-07T23:26:20.9309012Z           "evidence": [
2026-06-07T23:26:20.9309094Z             {
2026-06-07T23:26:20.9309202Z               "path": "crates/spt-live/src/echo.rs",
2026-06-07T23:26:20.9309298Z               "line": 184
2026-06-07T23:26:20.9309390Z             },
2026-06-07T23:26:20.9309471Z             {
2026-06-07T23:26:20.9309580Z               "path": "crates/spt-live/src/echo.rs",
2026-06-07T23:26:20.9309665Z               "line": 236
2026-06-07T23:26:20.9309743Z             },
2026-06-07T23:26:20.9309828Z             {
2026-06-07T23:26:20.9309937Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-07T23:26:20.9310058Z               "line": 186
2026-06-07T23:26:20.9310142Z             }
2026-06-07T23:26:20.9310227Z           ]
2026-06-07T23:26:20.9310312Z         }
2026-06-07T23:26:20.9310394Z       }
2026-06-07T23:26:20.9310478Z     },
2026-06-07T23:26:20.9310563Z     {
2026-06-07T23:26:20.9310668Z       "id": "REQ-HAZARD-EBUSY-RENAME",
2026-06-07T23:26:20.9310835Z       "title": "tmp-write + atomic-rename + retry on Windows EBUSY (5.2)",
2026-06-07T23:26:20.9310935Z       "requiredStages": [
2026-06-07T23:26:20.9311017Z         "impl",
2026-06-07T23:26:20.9311097Z         "unit"
2026-06-07T23:26:20.9311187Z       ],
2026-06-07T23:26:20.9311268Z       "stages": {
2026-06-07T23:26:20.9311351Z         "doc": {
2026-06-07T23:26:20.9311436Z           "complete": false,
2026-06-07T23:26:20.9311531Z           "evidence": []
2026-06-07T23:26:20.9311608Z         },
2026-06-07T23:26:20.9311694Z         "impl": {
2026-06-07T23:26:20.9311784Z           "complete": true,
2026-06-07T23:26:20.9311870Z           "evidence": [
2026-06-07T23:26:20.9311956Z             {
2026-06-07T23:26:20.9312070Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-07T23:26:20.9312160Z               "line": 48
2026-06-07T23:26:20.9312242Z             },
2026-06-07T23:26:20.9312324Z             {
2026-06-07T23:26:20.9312442Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-07T23:26:20.9312537Z               "line": 55
2026-06-07T23:26:20.9312620Z             },
2026-06-07T23:26:20.9312704Z             {
2026-06-07T23:26:20.9312813Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-07T23:26:20.9312908Z               "line": 74
2026-06-07T23:26:20.9312989Z             },
2026-06-07T23:26:20.9313077Z             {
2026-06-07T23:26:20.9313186Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-07T23:26:20.9313274Z               "line": 91
2026-06-07T23:26:20.9313355Z             }
2026-06-07T23:26:20.9313440Z           ]
2026-06-07T23:26:20.9313526Z         },
2026-06-07T23:26:20.9313612Z         "int": {
2026-06-07T23:26:20.9313707Z           "complete": false,
2026-06-07T23:26:20.9313792Z           "evidence": []
2026-06-07T23:26:20.9313879Z         },
2026-06-07T23:26:20.9313960Z         "unit": {
2026-06-07T23:26:20.9314054Z           "complete": true,
2026-06-07T23:26:20.9314145Z           "evidence": [
2026-06-07T23:26:20.9314332Z             {
2026-06-07T23:26:20.9314445Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-07T23:26:20.9314533Z               "line": 149
2026-06-07T23:26:20.9314617Z             },
2026-06-07T23:26:20.9314703Z             {
2026-06-07T23:26:20.9314881Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-07T23:26:20.9315018Z               "line": 166
2026-06-07T23:26:20.9315104Z             },
2026-06-07T23:26:20.9315186Z             {
2026-06-07T23:26:20.9315299Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-07T23:26:20.9315393Z               "line": 176
2026-06-07T23:26:20.9315480Z             },
2026-06-07T23:26:20.9315578Z             {
2026-06-07T23:26:20.9315701Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-07T23:26:20.9315787Z               "line": 194
2026-06-07T23:26:20.9315869Z             },
2026-06-07T23:26:20.9315945Z             {
2026-06-07T23:26:20.9316054Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-07T23:26:20.9316141Z               "line": 207
2026-06-07T23:26:20.9316246Z             }
2026-06-07T23:26:20.9316326Z           ]
2026-06-07T23:26:20.9316407Z         }
2026-06-07T23:26:20.9316484Z       }
2026-06-07T23:26:20.9316574Z     },
2026-06-07T23:26:20.9316664Z     {
2026-06-07T23:26:20.9316780Z       "id": "REQ-HAZARD-ECHO-BEFORE-SIGNOFF",
2026-06-07T23:26:20.9317041Z       "title": "Echo-commune fires before INIT_SIGNOFF on orphan teardown (3.3)",
2026-06-07T23:26:20.9317128Z       "requiredStages": [
2026-06-07T23:26:20.9317208Z         "impl",
2026-06-07T23:26:20.9317294Z         "unit"
2026-06-07T23:26:20.9317376Z       ],
2026-06-07T23:26:20.9317466Z       "stages": {
2026-06-07T23:26:20.9317546Z         "doc": {
2026-06-07T23:26:20.9317637Z           "complete": false,
2026-06-07T23:26:20.9317729Z           "evidence": []
2026-06-07T23:26:20.9317810Z         },
2026-06-07T23:26:20.9317898Z         "impl": {
2026-06-07T23:26:20.9317996Z           "complete": true,
2026-06-07T23:26:20.9318091Z           "evidence": [
2026-06-07T23:26:20.9318175Z             {
2026-06-07T23:26:20.9318299Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9318390Z               "line": 373
2026-06-07T23:26:20.9318476Z             },
2026-06-07T23:26:20.9318561Z             {
2026-06-07T23:26:20.9318676Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-07T23:26:20.9318767Z               "line": 26
2026-06-07T23:26:20.9318852Z             }
2026-06-07T23:26:20.9318933Z           ]
2026-06-07T23:26:20.9319025Z         },
2026-06-07T23:26:20.9319105Z         "int": {
2026-06-07T23:26:20.9319195Z           "complete": false,
2026-06-07T23:26:20.9319281Z           "evidence": []
2026-06-07T23:26:20.9319363Z         },
2026-06-07T23:26:20.9319448Z         "unit": {
2026-06-07T23:26:20.9319538Z           "complete": true,
2026-06-07T23:26:20.9319630Z           "evidence": [
2026-06-07T23:26:20.9319711Z             {
2026-06-07T23:26:20.9319825Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-07T23:26:20.9319920Z               "line": 150
2026-06-07T23:26:20.9320002Z             },
2026-06-07T23:26:20.9320091Z             {
2026-06-07T23:26:20.9320202Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-07T23:26:20.9320293Z               "line": 208
2026-06-07T23:26:20.9320379Z             }
2026-06-07T23:26:20.9320463Z           ]
2026-06-07T23:26:20.9320545Z         }
2026-06-07T23:26:20.9320627Z       }
2026-06-07T23:26:20.9320716Z     },
2026-06-07T23:26:20.9320801Z     {
2026-06-07T23:26:20.9320921Z       "id": "REQ-HAZARD-ELEVATED-DAEMON-SPAWN",
2026-06-07T23:26:20.9322292Z       "title": "The daemon always runs unelevated in the invoking user's universe, regardless of which command spawns it: an elevated spawner de-elevates (Windows: UAC linked token via CreateProcessWithTokenW; Linux: drop to SUDO_UID/SUDO_GID + the invoker's HOME) — an elevated daemon's pipes deny unelevated clients (every later spt reads not-running→spawn→bind Access-denied) and a sudo'd daemon roots the user's state universe (5.7)",
2026-06-07T23:26:20.9322502Z       "requiredStages": [
2026-06-07T23:26:20.9322593Z         "doc",
2026-06-07T23:26:20.9322673Z         "impl",
2026-06-07T23:26:20.9322754Z         "unit"
2026-06-07T23:26:20.9322926Z       ],
2026-06-07T23:26:20.9323016Z       "stages": {
2026-06-07T23:26:20.9323102Z         "doc": {
2026-06-07T23:26:20.9323199Z           "complete": true,
2026-06-07T23:26:20.9323292Z           "evidence": [
2026-06-07T23:26:20.9323378Z             {
2026-06-07T23:26:20.9323487Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-07T23:26:20.9325455Z               "line": 211
2026-06-07T23:26:20.9325568Z             }
2026-06-07T23:26:20.9325654Z           ]
2026-06-07T23:26:20.9325742Z         },
2026-06-07T23:26:20.9325831Z         "impl": {
2026-06-07T23:26:20.9325930Z           "complete": true,
2026-06-07T23:26:20.9326020Z           "evidence": [
2026-06-07T23:26:20.9326106Z             {
2026-06-07T23:26:20.9326233Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-07T23:26:20.9326337Z               "line": 54
2026-06-07T23:26:20.9326720Z             },
2026-06-07T23:26:20.9326801Z             {
2026-06-07T23:26:20.9326919Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-07T23:26:20.9327106Z               "line": 317
2026-06-07T23:26:20.9327181Z             },
2026-06-07T23:26:20.9327272Z             {
2026-06-07T23:26:20.9327397Z               "path": "crates/spt-daemon/src/deelevate.rs",
2026-06-07T23:26:20.9327487Z               "line": 36
2026-06-07T23:26:20.9327572Z             },
2026-06-07T23:26:20.9327660Z             {
2026-06-07T23:26:20.9327787Z               "path": "crates/spt-daemon/src/deelevate.rs",
2026-06-07T23:26:20.9327877Z               "line": 59
2026-06-07T23:26:20.9327960Z             },
2026-06-07T23:26:20.9328045Z             {
2026-06-07T23:26:20.9328169Z               "path": "crates/spt-daemon/src/deelevate.rs",
2026-06-07T23:26:20.9328255Z               "line": 87
2026-06-07T23:26:20.9328346Z             },
2026-06-07T23:26:20.9328426Z             {
2026-06-07T23:26:20.9328526Z               "path": "crates/spt-daemon/src/deelevate.rs",
2026-06-07T23:26:20.9328618Z               "line": 106
2026-06-07T23:26:20.9328707Z             },
2026-06-07T23:26:20.9328792Z             {
2026-06-07T23:26:20.9328907Z               "path": "crates/spt-daemon/src/deelevate.rs",
2026-06-07T23:26:20.9328998Z               "line": 331
2026-06-07T23:26:20.9329084Z             },
2026-06-07T23:26:20.9329163Z             {
2026-06-07T23:26:20.9329284Z               "path": "crates/spt-daemon/src/deelevate.rs",
2026-06-07T23:26:20.9329375Z               "line": 473
2026-06-07T23:26:20.9329464Z             },
2026-06-07T23:26:20.9329551Z             {
2026-06-07T23:26:20.9329665Z               "path": "crates/spt-daemon/src/deelevate.rs",
2026-06-07T23:26:20.9329756Z               "line": 519
2026-06-07T23:26:20.9329837Z             },
2026-06-07T23:26:20.9329918Z             {
2026-06-07T23:26:20.9330037Z               "path": "crates/spt/src/elevation.rs",
2026-06-07T23:26:20.9330127Z               "line": 145
2026-06-07T23:26:20.9330209Z             },
2026-06-07T23:26:20.9330295Z             {
2026-06-07T23:26:20.9330399Z               "path": "crates/spt/src/main.rs",
2026-06-07T23:26:20.9330490Z               "line": 29
2026-06-07T23:26:20.9330581Z             }
2026-06-07T23:26:20.9330661Z           ]
2026-06-07T23:26:20.9330747Z         },
2026-06-07T23:26:20.9330835Z         "int": {
2026-06-07T23:26:20.9330925Z           "complete": false,
2026-06-07T23:26:20.9331018Z           "evidence": []
2026-06-07T23:26:20.9331101Z         },
2026-06-07T23:26:20.9331187Z         "unit": {
2026-06-07T23:26:20.9331276Z           "complete": true,
2026-06-07T23:26:20.9331366Z           "evidence": [
2026-06-07T23:26:20.9331452Z             {
2026-06-07T23:26:20.9331571Z               "path": "crates/spt-daemon/src/deelevate.rs",
2026-06-07T23:26:20.9331659Z               "line": 661
2026-06-07T23:26:20.9331879Z             },
2026-06-07T23:26:20.9331965Z             {
2026-06-07T23:26:20.9332079Z               "path": "crates/spt-daemon/src/deelevate.rs",
2026-06-07T23:26:20.9332170Z               "line": 707
2026-06-07T23:26:20.9332257Z             }
2026-06-07T23:26:20.9332433Z           ]
2026-06-07T23:26:20.9332518Z         }
2026-06-07T23:26:20.9332599Z       }
2026-06-07T23:26:20.9332685Z     },
2026-06-07T23:26:20.9332762Z     {
2026-06-07T23:26:20.9332885Z       "id": "REQ-HAZARD-ENVELOPE-DECODE-ORDER",
2026-06-07T23:26:20.9333042Z       "title": "Envelope decode order, ampersand decoded last (4.1)",
2026-06-07T23:26:20.9333139Z       "requiredStages": [
2026-06-07T23:26:20.9333233Z         "impl",
2026-06-07T23:26:20.9333314Z         "unit"
2026-06-07T23:26:20.9333396Z       ],
2026-06-07T23:26:20.9333482Z       "stages": {
2026-06-07T23:26:20.9333567Z         "doc": {
2026-06-07T23:26:20.9333658Z           "complete": false,
2026-06-07T23:26:20.9333745Z           "evidence": []
2026-06-07T23:26:20.9333843Z         },
2026-06-07T23:26:20.9333928Z         "impl": {
2026-06-07T23:26:20.9334019Z           "complete": true,
2026-06-07T23:26:20.9334109Z           "evidence": [
2026-06-07T23:26:20.9334193Z             {
2026-06-07T23:26:20.9334326Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-07T23:26:20.9334413Z               "line": 36
2026-06-07T23:26:20.9334498Z             },
2026-06-07T23:26:20.9334584Z             {
2026-06-07T23:26:20.9334699Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-07T23:26:20.9334794Z               "line": 68
2026-06-07T23:26:20.9334874Z             }
2026-06-07T23:26:20.9334960Z           ]
2026-06-07T23:26:20.9335189Z         },
2026-06-07T23:26:20.9335285Z         "int": {
2026-06-07T23:26:20.9335381Z           "complete": false,
2026-06-07T23:26:20.9335471Z           "evidence": []
2026-06-07T23:26:20.9335547Z         },
2026-06-07T23:26:20.9335634Z         "unit": {
2026-06-07T23:26:20.9335719Z           "complete": true,
2026-06-07T23:26:20.9335800Z           "evidence": [
2026-06-07T23:26:20.9335886Z             {
2026-06-07T23:26:20.9336006Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-07T23:26:20.9336095Z               "line": 143
2026-06-07T23:26:20.9336201Z             },
2026-06-07T23:26:20.9336297Z             {
2026-06-07T23:26:20.9336419Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-07T23:26:20.9336509Z               "line": 160
2026-06-07T23:26:20.9336595Z             },
2026-06-07T23:26:20.9336675Z             {
2026-06-07T23:26:20.9336793Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-07T23:26:20.9336883Z               "line": 168
2026-06-07T23:26:20.9337055Z             }
2026-06-07T23:26:20.9337141Z           ]
2026-06-07T23:26:20.9337227Z         }
2026-06-07T23:26:20.9337313Z       }
2026-06-07T23:26:20.9337394Z     },
2026-06-07T23:26:20.9337474Z     {
2026-06-07T23:26:20.9337604Z       "id": "REQ-HAZARD-ENVELOPE-PARSER-SAFE",
2026-06-07T23:26:20.9337785Z       "title": "Two-slice envelope parser is panic-free and tolerant (4.2)",
2026-06-07T23:26:20.9337886Z       "requiredStages": [
2026-06-07T23:26:20.9337975Z         "impl",
2026-06-07T23:26:20.9338061Z         "unit"
2026-06-07T23:26:20.9338147Z       ],
2026-06-07T23:26:20.9338239Z       "stages": {
2026-06-07T23:26:20.9338324Z         "doc": {
2026-06-07T23:26:20.9338414Z           "complete": false,
2026-06-07T23:26:20.9338506Z           "evidence": []
2026-06-07T23:26:20.9338591Z         },
2026-06-07T23:26:20.9338676Z         "impl": {
2026-06-07T23:26:20.9338762Z           "complete": true,
2026-06-07T23:26:20.9338859Z           "evidence": [
2026-06-07T23:26:20.9338944Z             {
2026-06-07T23:26:20.9339058Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-07T23:26:20.9339154Z               "line": 107
2026-06-07T23:26:20.9339235Z             }
2026-06-07T23:26:20.9339319Z           ]
2026-06-07T23:26:20.9339404Z         },
2026-06-07T23:26:20.9339496Z         "int": {
2026-06-07T23:26:20.9339714Z           "complete": false,
2026-06-07T23:26:20.9339806Z           "evidence": []
2026-06-07T23:26:20.9339887Z         },
2026-06-07T23:26:20.9339972Z         "unit": {
2026-06-07T23:26:20.9340068Z           "complete": true,
2026-06-07T23:26:20.9340240Z           "evidence": [
2026-06-07T23:26:20.9340330Z             {
2026-06-07T23:26:20.9340446Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-07T23:26:20.9340540Z               "line": 184
2026-06-07T23:26:20.9340625Z             },
2026-06-07T23:26:20.9340712Z             {
2026-06-07T23:26:20.9340827Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-07T23:26:20.9340911Z               "line": 193
2026-06-07T23:26:20.9340997Z             },
2026-06-07T23:26:20.9341080Z             {
2026-06-07T23:26:20.9341198Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-07T23:26:20.9341289Z               "line": 201
2026-06-07T23:26:20.9341370Z             },
2026-06-07T23:26:20.9341456Z             {
2026-06-07T23:26:20.9341573Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-07T23:26:20.9341666Z               "line": 211
2026-06-07T23:26:20.9341752Z             },
2026-06-07T23:26:20.9341832Z             {
2026-06-07T23:26:20.9341950Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-07T23:26:20.9342041Z               "line": 221
2026-06-07T23:26:20.9342126Z             }
2026-06-07T23:26:20.9342210Z           ]
2026-06-07T23:26:20.9342295Z         }
2026-06-07T23:26:20.9342382Z       }
2026-06-07T23:26:20.9342468Z     },
2026-06-07T23:26:20.9342548Z     {
2026-06-07T23:26:20.9342658Z       "id": "REQ-HAZARD-EPHEMERAL-CLEANUP",
2026-06-07T23:26:20.9342817Z       "title": "Ephemeral perch cleanup on every ring exit path (3.1)",
2026-06-07T23:26:20.9342910Z       "requiredStages": [
2026-06-07T23:26:20.9342998Z         "impl",
2026-06-07T23:26:20.9343083Z         "unit"
2026-06-07T23:26:20.9343164Z       ],
2026-06-07T23:26:20.9343254Z       "stages": {
2026-06-07T23:26:20.9343341Z         "doc": {
2026-06-07T23:26:20.9343435Z           "complete": false,
2026-06-07T23:26:20.9343526Z           "evidence": []
2026-06-07T23:26:20.9343612Z         },
2026-06-07T23:26:20.9343703Z         "impl": {
2026-06-07T23:26:20.9343793Z           "complete": true,
2026-06-07T23:26:20.9343884Z           "evidence": [
2026-06-07T23:26:20.9343966Z             {
2026-06-07T23:26:20.9344079Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-07T23:26:20.9344165Z               "line": 14
2026-06-07T23:26:20.9344247Z             },
2026-06-07T23:26:20.9344333Z             {
2026-06-07T23:26:20.9344440Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-07T23:26:20.9344535Z               "line": 62
2026-06-07T23:26:20.9344622Z             }
2026-06-07T23:26:20.9344707Z           ]
2026-06-07T23:26:20.9344791Z         },
2026-06-07T23:26:20.9344876Z         "int": {
2026-06-07T23:26:20.9345110Z           "complete": false,
2026-06-07T23:26:20.9345201Z           "evidence": []
2026-06-07T23:26:20.9345293Z         },
2026-06-07T23:26:20.9345378Z         "unit": {
2026-06-07T23:26:20.9345468Z           "complete": true,
2026-06-07T23:26:20.9345550Z           "evidence": [
2026-06-07T23:26:20.9345635Z             {
2026-06-07T23:26:20.9345754Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-07T23:26:20.9345855Z               "line": 160
2026-06-07T23:26:20.9345955Z             },
2026-06-07T23:26:20.9346027Z             {
2026-06-07T23:26:20.9346126Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-07T23:26:20.9346218Z               "line": 197
2026-06-07T23:26:20.9346302Z             },
2026-06-07T23:26:20.9346388Z             {
2026-06-07T23:26:20.9346489Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-07T23:26:20.9346580Z               "line": 219
2026-06-07T23:26:20.9346664Z             }
2026-06-07T23:26:20.9346751Z           ]
2026-06-07T23:26:20.9346833Z         }
2026-06-07T23:26:20.9346918Z       }
2026-06-07T23:26:20.9347088Z     },
2026-06-07T23:26:20.9347277Z     {
2026-06-07T23:26:20.9347386Z       "id": "REQ-HAZARD-EPOCH-RESET",
2026-06-07T23:26:20.9348707Z       "title": "Advertisement-epoch reset strands a node: peers' higher last-seen epoch drops the reset node's fresh advertisements as Stale until the counter outruns history. Common case (full reinstall/re-pair) is mitigated by REQ-SUBNET-7's ceremony eviction (peer-side epoch memory dies with the deleted row — acceptance-verified); the residual narrow slice (epoch file lost, identity kept) is documented, guard deferred to a field hit (4.11)",
2026-06-07T23:26:20.9348912Z       "requiredStages": [],
2026-06-07T23:26:20.9349003Z       "stages": {
2026-06-07T23:26:20.9349090Z         "doc": {
2026-06-07T23:26:20.9349179Z           "complete": true,
2026-06-07T23:26:20.9349270Z           "evidence": [
2026-06-07T23:26:20.9349356Z             {
2026-06-07T23:26:20.9349461Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-07T23:26:20.9349555Z               "line": 162
2026-06-07T23:26:20.9349647Z             }
2026-06-07T23:26:20.9349729Z           ]
2026-06-07T23:26:20.9349814Z         },
2026-06-07T23:26:20.9349899Z         "impl": {
2026-06-07T23:26:20.9349993Z           "complete": false,
2026-06-07T23:26:20.9350080Z           "evidence": []
2026-06-07T23:26:20.9350175Z         },
2026-06-07T23:26:20.9350260Z         "int": {
2026-06-07T23:26:20.9350351Z           "complete": false,
2026-06-07T23:26:20.9350442Z           "evidence": []
2026-06-07T23:26:20.9350523Z         },
2026-06-07T23:26:20.9350613Z         "unit": {
2026-06-07T23:26:20.9350700Z           "complete": false,
2026-06-07T23:26:20.9350791Z           "evidence": []
2026-06-07T23:26:20.9350885Z         }
2026-06-07T23:26:20.9350967Z       }
2026-06-07T23:26:20.9351048Z     },
2026-06-07T23:26:20.9351129Z     {
2026-06-07T23:26:20.9351247Z       "id": "REQ-HAZARD-EVENTPART-REASSEMBLY",
2026-06-07T23:26:20.9351453Z       "title": "EVENT-PART split/reassembly is byte-exact; orphan parts dropped silently",
2026-06-07T23:26:20.9351557Z       "requiredStages": [
2026-06-07T23:26:20.9351650Z         "impl",
2026-06-07T23:26:20.9351734Z         "unit"
2026-06-07T23:26:20.9351820Z       ],
2026-06-07T23:26:20.9351901Z       "stages": {
2026-06-07T23:26:20.9351993Z         "doc": {
2026-06-07T23:26:20.9352087Z           "complete": false,
2026-06-07T23:26:20.9352178Z           "evidence": []
2026-06-07T23:26:20.9352265Z         },
2026-06-07T23:26:20.9352355Z         "impl": {
2026-06-07T23:26:20.9352449Z           "complete": true,
2026-06-07T23:26:20.9352539Z           "evidence": [
2026-06-07T23:26:20.9352620Z             {
2026-06-07T23:26:20.9352737Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-07T23:26:20.9352832Z               "line": 76
2026-06-07T23:26:20.9352913Z             },
2026-06-07T23:26:20.9352995Z             {
2026-06-07T23:26:20.9353109Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-07T23:26:20.9353194Z               "line": 167
2026-06-07T23:26:20.9353281Z             },
2026-06-07T23:26:20.9353367Z             {
2026-06-07T23:26:20.9353475Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-07T23:26:20.9353567Z               "line": 233
2026-06-07T23:26:20.9353648Z             },
2026-06-07T23:26:20.9353738Z             {
2026-06-07T23:26:20.9353848Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-07T23:26:20.9353939Z               "line": 272
2026-06-07T23:26:20.9354029Z             }
2026-06-07T23:26:20.9354114Z           ]
2026-06-07T23:26:20.9354197Z         },
2026-06-07T23:26:20.9354282Z         "int": {
2026-06-07T23:26:20.9354373Z           "complete": false,
2026-06-07T23:26:20.9354463Z           "evidence": []
2026-06-07T23:26:20.9354550Z         },
2026-06-07T23:26:20.9354634Z         "unit": {
2026-06-07T23:26:20.9354730Z           "complete": true,
2026-06-07T23:26:20.9354822Z           "evidence": [
2026-06-07T23:26:20.9354903Z             {
2026-06-07T23:26:20.9355010Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-07T23:26:20.9355177Z               "line": 321
2026-06-07T23:26:20.9355262Z             },
2026-06-07T23:26:20.9355341Z             {
2026-06-07T23:26:20.9355456Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-07T23:26:20.9355547Z               "line": 329
2026-06-07T23:26:20.9355694Z             },
2026-06-07T23:26:20.9355781Z             {
2026-06-07T23:26:20.9355886Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-07T23:26:20.9355976Z               "line": 356
2026-06-07T23:26:20.9356057Z             },
2026-06-07T23:26:20.9356144Z             {
2026-06-07T23:26:20.9356248Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-07T23:26:20.9356338Z               "line": 395
2026-06-07T23:26:20.9356425Z             },
2026-06-07T23:26:20.9356506Z             {
2026-06-07T23:26:20.9356615Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-07T23:26:20.9356705Z               "line": 406
2026-06-07T23:26:20.9356788Z             },
2026-06-07T23:26:20.9356872Z             {
2026-06-07T23:26:20.9357078Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-07T23:26:20.9357168Z               "line": 418
2026-06-07T23:26:20.9357254Z             },
2026-06-07T23:26:20.9357340Z             {
2026-06-07T23:26:20.9357455Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-07T23:26:20.9357544Z               "line": 442
2026-06-07T23:26:20.9357629Z             }
2026-06-07T23:26:20.9357710Z           ]
2026-06-07T23:26:20.9357796Z         }
2026-06-07T23:26:20.9357875Z       }
2026-06-07T23:26:20.9357961Z     },
2026-06-07T23:26:20.9358046Z     {
2026-06-07T23:26:20.9358153Z       "id": "REQ-HAZARD-GEN-START-NOW",
2026-06-07T23:26:20.9358294Z       "title": "gen_start = now() on cold-start and handoff (2.4)",
2026-06-07T23:26:20.9358391Z       "requiredStages": [
2026-06-07T23:26:20.9358477Z         "impl",
2026-06-07T23:26:20.9358561Z         "int"
2026-06-07T23:26:20.9358653Z       ],
2026-06-07T23:26:20.9358748Z       "stages": {
2026-06-07T23:26:20.9358843Z         "doc": {
2026-06-07T23:26:20.9358938Z           "complete": false,
2026-06-07T23:26:20.9359030Z           "evidence": []
2026-06-07T23:26:20.9359115Z         },
2026-06-07T23:26:20.9359195Z         "impl": {
2026-06-07T23:26:20.9359297Z           "complete": true,
2026-06-07T23:26:20.9359387Z           "evidence": [
2026-06-07T23:26:20.9359472Z             {
2026-06-07T23:26:20.9359592Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-07T23:26:20.9359679Z               "line": 22
2026-06-07T23:26:20.9359772Z             }
2026-06-07T23:26:20.9359854Z           ]
2026-06-07T23:26:20.9359941Z         },
2026-06-07T23:26:20.9360026Z         "int": {
2026-06-07T23:26:20.9360115Z           "complete": true,
2026-06-07T23:26:20.9360202Z           "evidence": [
2026-06-07T23:26:20.9360284Z             {
2026-06-07T23:26:20.9360411Z               "path": "crates/spt-daemon/tests/handoff.rs",
2026-06-07T23:26:20.9360496Z               "line": 18
2026-06-07T23:26:20.9360582Z             }
2026-06-07T23:26:20.9360669Z           ]
2026-06-07T23:26:20.9360754Z         },
2026-06-07T23:26:20.9360844Z         "unit": {
2026-06-07T23:26:20.9360936Z           "complete": false,
2026-06-07T23:26:20.9361031Z           "evidence": []
2026-06-07T23:26:20.9361116Z         }
2026-06-07T23:26:20.9361202Z       }
2026-06-07T23:26:20.9361284Z     },
2026-06-07T23:26:20.9361365Z     {
2026-06-07T23:26:20.9361483Z       "id": "REQ-HAZARD-GRACE-BEFORE-SIGNOFF",
2026-06-07T23:26:20.9361660Z       "title": "Grace-period wait completes before composing INIT_SIGNOFF (1.1)",
2026-06-07T23:26:20.9361755Z       "requiredStages": [
2026-06-07T23:26:20.9361842Z         "impl",
2026-06-07T23:26:20.9361932Z         "unit"
2026-06-07T23:26:20.9362013Z       ],
2026-06-07T23:26:20.9362099Z       "stages": {
2026-06-07T23:26:20.9362185Z         "doc": {
2026-06-07T23:26:20.9362276Z           "complete": false,
2026-06-07T23:26:20.9362365Z           "evidence": []
2026-06-07T23:26:20.9362451Z         },
2026-06-07T23:26:20.9362642Z         "impl": {
2026-06-07T23:26:20.9362733Z           "complete": true,
2026-06-07T23:26:20.9362820Z           "evidence": [
2026-06-07T23:26:20.9362910Z             {
2026-06-07T23:26:20.9363028Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9363227Z               "line": 372
2026-06-07T23:26:20.9363316Z             },
2026-06-07T23:26:20.9363401Z             {
2026-06-07T23:26:20.9363517Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-07T23:26:20.9363608Z               "line": 27
2026-06-07T23:26:20.9363692Z             }
2026-06-07T23:26:20.9363778Z           ]
2026-06-07T23:26:20.9363865Z         },
2026-06-07T23:26:20.9363945Z         "int": {
2026-06-07T23:26:20.9364040Z           "complete": false,
2026-06-07T23:26:20.9364132Z           "evidence": []
2026-06-07T23:26:20.9364217Z         },
2026-06-07T23:26:20.9364303Z         "unit": {
2026-06-07T23:26:20.9364389Z           "complete": true,
2026-06-07T23:26:20.9364480Z           "evidence": [
2026-06-07T23:26:20.9364570Z             {
2026-06-07T23:26:20.9364689Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9364781Z               "line": 817
2026-06-07T23:26:20.9364866Z             },
2026-06-07T23:26:20.9364952Z             {
2026-06-07T23:26:20.9365067Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-07T23:26:20.9365157Z               "line": 181
2026-06-07T23:26:20.9365237Z             }
2026-06-07T23:26:20.9365323Z           ]
2026-06-07T23:26:20.9365411Z         }
2026-06-07T23:26:20.9365495Z       }
2026-06-07T23:26:20.9365584Z     },
2026-06-07T23:26:20.9365670Z     {
2026-06-07T23:26:20.9365784Z       "id": "REQ-HAZARD-HANDOFF-ARGV-COMPAT",
2026-06-07T23:26:20.9365939Z       "title": "Broker/brain IPC + handoff argv version-tolerant (2.3)",
2026-06-07T23:26:20.9366045Z       "requiredStages": [
2026-06-07T23:26:20.9366136Z         "impl",
2026-06-07T23:26:20.9366221Z         "unit"
2026-06-07T23:26:20.9366307Z       ],
2026-06-07T23:26:20.9366394Z       "stages": {
2026-06-07T23:26:20.9366479Z         "doc": {
2026-06-07T23:26:20.9366573Z           "complete": false,
2026-06-07T23:26:20.9366665Z           "evidence": []
2026-06-07T23:26:20.9366751Z         },
2026-06-07T23:26:20.9366841Z         "impl": {
2026-06-07T23:26:20.9366932Z           "complete": true,
2026-06-07T23:26:20.9367117Z           "evidence": [
2026-06-07T23:26:20.9367208Z             {
2026-06-07T23:26:20.9367319Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-07T23:26:20.9367409Z               "line": 20
2026-06-07T23:26:20.9367495Z             },
2026-06-07T23:26:20.9367576Z             {
2026-06-07T23:26:20.9367691Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-07T23:26:20.9367780Z               "line": 100
2026-06-07T23:26:20.9367861Z             },
2026-06-07T23:26:20.9367949Z             {
2026-06-07T23:26:20.9368072Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-07T23:26:20.9368161Z               "line": 68
2026-06-07T23:26:20.9368251Z             },
2026-06-07T23:26:20.9368337Z             {
2026-06-07T23:26:20.9368449Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-07T23:26:20.9368544Z               "line": 80
2026-06-07T23:26:20.9368631Z             }
2026-06-07T23:26:20.9368722Z           ]
2026-06-07T23:26:20.9368807Z         },
2026-06-07T23:26:20.9368893Z         "int": {
2026-06-07T23:26:20.9368989Z           "complete": false,
2026-06-07T23:26:20.9369079Z           "evidence": []
2026-06-07T23:26:20.9369164Z         },
2026-06-07T23:26:20.9369251Z         "unit": {
2026-06-07T23:26:20.9369346Z           "complete": true,
2026-06-07T23:26:20.9369436Z           "evidence": [
2026-06-07T23:26:20.9369517Z             {
2026-06-07T23:26:20.9369637Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-07T23:26:20.9369727Z               "line": 152
2026-06-07T23:26:20.9369813Z             },
2026-06-07T23:26:20.9369895Z             {
2026-06-07T23:26:20.9370013Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-07T23:26:20.9370675Z               "line": 175
2026-06-07T23:26:20.9370757Z             },
2026-06-07T23:26:20.9370844Z             {
2026-06-07T23:26:20.9370957Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-07T23:26:20.9371142Z               "line": 186
2026-06-07T23:26:20.9371229Z             },
2026-06-07T23:26:20.9371309Z             {
2026-06-07T23:26:20.9371428Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-07T23:26:20.9371520Z               "line": 202
2026-06-07T23:26:20.9371606Z             },
2026-06-07T23:26:20.9371691Z             {
2026-06-07T23:26:20.9371811Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-07T23:26:20.9371901Z               "line": 216
2026-06-07T23:26:20.9371986Z             },
2026-06-07T23:26:20.9372067Z             {
2026-06-07T23:26:20.9372187Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-07T23:26:20.9372282Z               "line": 137
2026-06-07T23:26:20.9372372Z             }
2026-06-07T23:26:20.9372460Z           ]
2026-06-07T23:26:20.9372544Z         }
2026-06-07T23:26:20.9372630Z       }
2026-06-07T23:26:20.9372716Z     },
2026-06-07T23:26:20.9372798Z     {
2026-06-07T23:26:20.9372902Z       "id": "REQ-HAZARD-ID-CHARSET",
2026-06-07T23:26:20.9373151Z       "title": "Addressable-id charset reserves :/@ delimiters; validated at every creation seam (4.6)",
2026-06-07T23:26:20.9373254Z       "requiredStages": [
2026-06-07T23:26:20.9373341Z         "impl",
2026-06-07T23:26:20.9373433Z         "unit"
2026-06-07T23:26:20.9373516Z       ],
2026-06-07T23:26:20.9373602Z       "stages": {
2026-06-07T23:26:20.9373688Z         "doc": {
2026-06-07T23:26:20.9373783Z           "complete": true,
2026-06-07T23:26:20.9373876Z           "evidence": [
2026-06-07T23:26:20.9373956Z             {
2026-06-07T23:26:20.9374067Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-07T23:26:20.9374163Z               "line": 131
2026-06-07T23:26:20.9374248Z             }
2026-06-07T23:26:20.9374338Z           ]
2026-06-07T23:26:20.9374420Z         },
2026-06-07T23:26:20.9374510Z         "impl": {
2026-06-07T23:26:20.9374600Z           "complete": true,
2026-06-07T23:26:20.9374693Z           "evidence": [
2026-06-07T23:26:20.9374782Z             {
2026-06-07T23:26:20.9374892Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-07T23:26:20.9374983Z               "line": 65
2026-06-07T23:26:20.9375064Z             },
2026-06-07T23:26:20.9375149Z             {
2026-06-07T23:26:20.9375426Z               "path": "crates/spt-proto/src/id.rs",
2026-06-07T23:26:20.9375521Z               "line": 17
2026-06-07T23:26:20.9375603Z             },
2026-06-07T23:26:20.9375679Z             {
2026-06-07T23:26:20.9375788Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:20.9375869Z               "line": 217
2026-06-07T23:26:20.9375947Z             },
2026-06-07T23:26:20.9376032Z             {
2026-06-07T23:26:20.9376145Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:20.9376240Z               "line": 317
2026-06-07T23:26:20.9376330Z             },
2026-06-07T23:26:20.9376438Z             {
2026-06-07T23:26:20.9376562Z               "path": "crates/spt/src/api/worker.rs",
2026-06-07T23:26:20.9376677Z               "line": 32
2026-06-07T23:26:20.9376762Z             },
2026-06-07T23:26:20.9376842Z             {
2026-06-07T23:26:20.9377039Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9377129Z               "line": 3666
2026-06-07T23:26:20.9377215Z             },
2026-06-07T23:26:20.9377297Z             {
2026-06-07T23:26:20.9377406Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9377496Z               "line": 3934
2026-06-07T23:26:20.9377583Z             }
2026-06-07T23:26:20.9377664Z           ]
2026-06-07T23:26:20.9377750Z         },
2026-06-07T23:26:20.9377835Z         "int": {
2026-06-07T23:26:20.9377926Z           "complete": false,
2026-06-07T23:26:20.9378021Z           "evidence": []
2026-06-07T23:26:20.9378227Z         },
2026-06-07T23:26:20.9378312Z         "unit": {
2026-06-07T23:26:20.9378407Z           "complete": true,
2026-06-07T23:26:20.9378494Z           "evidence": [
2026-06-07T23:26:20.9378580Z             {
2026-06-07T23:26:20.9378688Z               "path": "crates/spt-proto/src/id.rs",
2026-06-07T23:26:20.9378864Z               "line": 94
2026-06-07T23:26:20.9378953Z             },
2026-06-07T23:26:20.9379033Z             {
2026-06-07T23:26:20.9379143Z               "path": "crates/spt-proto/src/id.rs",
2026-06-07T23:26:20.9379234Z               "line": 111
2026-06-07T23:26:20.9379320Z             },
2026-06-07T23:26:20.9379400Z             {
2026-06-07T23:26:20.9379511Z               "path": "crates/spt-proto/src/id.rs",
2026-06-07T23:26:20.9379602Z               "line": 124
2026-06-07T23:26:20.9379681Z             },
2026-06-07T23:26:20.9379773Z             {
2026-06-07T23:26:20.9379878Z               "path": "crates/spt-proto/src/id.rs",
2026-06-07T23:26:20.9379964Z               "line": 134
2026-06-07T23:26:20.9380044Z             },
2026-06-07T23:26:20.9380131Z             {
2026-06-07T23:26:20.9380235Z               "path": "crates/spt-proto/src/id.rs",
2026-06-07T23:26:20.9380339Z               "line": 144
2026-06-07T23:26:20.9380445Z             },
2026-06-07T23:26:20.9380526Z             {
2026-06-07T23:26:20.9380635Z               "path": "crates/spt-proto/src/id.rs",
2026-06-07T23:26:20.9380722Z               "line": 156
2026-06-07T23:26:20.9380808Z             },
2026-06-07T23:26:20.9380892Z             {
2026-06-07T23:26:20.9381022Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:20.9381113Z               "line": 714
2026-06-07T23:26:20.9381198Z             }
2026-06-07T23:26:20.9381284Z           ]
2026-06-07T23:26:20.9381366Z         }
2026-06-07T23:26:20.9381452Z       }
2026-06-07T23:26:20.9381536Z     },
2026-06-07T23:26:20.9381621Z     {
2026-06-07T23:26:20.9381731Z       "id": "REQ-HAZARD-INBOX-NO-DOUBLE",
2026-06-07T23:26:20.9381860Z       "title": "No double-delivery via legacy inbox (4.5)",
2026-06-07T23:26:20.9381964Z       "requiredStages": [
2026-06-07T23:26:20.9382051Z         "impl",
2026-06-07T23:26:20.9382137Z         "unit"
2026-06-07T23:26:20.9382222Z       ],
2026-06-07T23:26:20.9382312Z       "stages": {
2026-06-07T23:26:20.9382400Z         "doc": {
2026-06-07T23:26:20.9382495Z           "complete": false,
2026-06-07T23:26:20.9382589Z           "evidence": []
2026-06-07T23:26:20.9382671Z         },
2026-06-07T23:26:20.9382761Z         "impl": {
2026-06-07T23:26:20.9382847Z           "complete": true,
2026-06-07T23:26:20.9382942Z           "evidence": [
2026-06-07T23:26:20.9383062Z             {
2026-06-07T23:26:20.9383185Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-07T23:26:20.9383296Z               "line": 128
2026-06-07T23:26:20.9383377Z             }
2026-06-07T23:26:20.9383471Z           ]
2026-06-07T23:26:20.9383558Z         },
2026-06-07T23:26:20.9383640Z         "int": {
2026-06-07T23:26:20.9383734Z           "complete": false,
2026-06-07T23:26:20.9383833Z           "evidence": []
2026-06-07T23:26:20.9383921Z         },
2026-06-07T23:26:20.9383998Z         "unit": {
2026-06-07T23:26:20.9384077Z           "complete": true,
2026-06-07T23:26:20.9384162Z           "evidence": [
2026-06-07T23:26:20.9384248Z             {
2026-06-07T23:26:20.9384361Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-07T23:26:20.9384451Z               "line": 205
2026-06-07T23:26:20.9384535Z             }
2026-06-07T23:26:20.9384623Z           ]
2026-06-07T23:26:20.9384709Z         }
2026-06-07T23:26:20.9384794Z       }
2026-06-07T23:26:20.9384875Z     },
2026-06-07T23:26:20.9384961Z     {
2026-06-07T23:26:20.9385075Z       "id": "REQ-HAZARD-INFO-JSON-TORN-READ",
2026-06-07T23:26:20.9385223Z       "title": "State-file reads tolerate concurrent writes (1.2)",
2026-06-07T23:26:20.9385319Z       "requiredStages": [
2026-06-07T23:26:20.9385409Z         "impl",
2026-06-07T23:26:20.9385494Z         "unit"
2026-06-07T23:26:20.9385577Z       ],
2026-06-07T23:26:20.9385743Z       "stages": {
2026-06-07T23:26:20.9385824Z         "doc": {
2026-06-07T23:26:20.9385920Z           "complete": false,
2026-06-07T23:26:20.9386009Z           "evidence": []
2026-06-07T23:26:20.9386096Z         },
2026-06-07T23:26:20.9386244Z         "impl": {
2026-06-07T23:26:20.9386338Z           "complete": true,
2026-06-07T23:26:20.9386429Z           "evidence": [
2026-06-07T23:26:20.9386516Z             {
2026-06-07T23:26:20.9386634Z               "path": "crates/spt-store/src/info.rs",
2026-06-07T23:26:20.9386719Z               "line": 246
2026-06-07T23:26:20.9386809Z             },
2026-06-07T23:26:20.9386895Z             {
2026-06-07T23:26:20.9387112Z               "path": "crates/spt-store/src/info.rs",
2026-06-07T23:26:20.9387204Z               "line": 257
2026-06-07T23:26:20.9387289Z             },
2026-06-07T23:26:20.9387374Z             {
2026-06-07T23:26:20.9387480Z               "path": "crates/spt-store/src/info.rs",
2026-06-07T23:26:20.9387566Z               "line": 275
2026-06-07T23:26:20.9387656Z             }
2026-06-07T23:26:20.9387742Z           ]
2026-06-07T23:26:20.9387828Z         },
2026-06-07T23:26:20.9387909Z         "int": {
2026-06-07T23:26:20.9388004Z           "complete": false,
2026-06-07T23:26:20.9388100Z           "evidence": []
2026-06-07T23:26:20.9388186Z         },
2026-06-07T23:26:20.9388276Z         "unit": {
2026-06-07T23:26:20.9388366Z           "complete": true,
2026-06-07T23:26:20.9388454Z           "evidence": [
2026-06-07T23:26:20.9388538Z             {
2026-06-07T23:26:20.9388648Z               "path": "crates/spt-store/src/info.rs",
2026-06-07T23:26:20.9388739Z               "line": 299
2026-06-07T23:26:20.9388825Z             },
2026-06-07T23:26:20.9388910Z             {
2026-06-07T23:26:20.9389020Z               "path": "crates/spt-store/src/info.rs",
2026-06-07T23:26:20.9389116Z               "line": 320
2026-06-07T23:26:20.9389201Z             },
2026-06-07T23:26:20.9389286Z             {
2026-06-07T23:26:20.9389391Z               "path": "crates/spt-store/src/info.rs",
2026-06-07T23:26:20.9389485Z               "line": 547
2026-06-07T23:26:20.9389570Z             },
2026-06-07T23:26:20.9389650Z             {
2026-06-07T23:26:20.9389761Z               "path": "crates/spt-store/src/info.rs",
2026-06-07T23:26:20.9389852Z               "line": 558
2026-06-07T23:26:20.9389936Z             },
2026-06-07T23:26:20.9390018Z             {
2026-06-07T23:26:20.9390128Z               "path": "crates/spt-store/src/info.rs",
2026-06-07T23:26:20.9390223Z               "line": 571
2026-06-07T23:26:20.9390304Z             }
2026-06-07T23:26:20.9392411Z           ]
2026-06-07T23:26:20.9392520Z         }
2026-06-07T23:26:20.9392606Z       }
2026-06-07T23:26:20.9392692Z     },
2026-06-07T23:26:20.9392777Z     {
2026-06-07T23:26:20.9392897Z       "id": "REQ-HAZARD-INSTANT-UNDERFLOW",
2026-06-07T23:26:20.9397157Z       "title": "Scheduling never subtracts a Duration from Instant::now() (underflow-panics on a host booted more recently than the offset); 'due now / never run' is Option<Instant>=None gated on forward duration_since only (5.9)",
2026-06-07T23:26:20.9397293Z       "requiredStages": [
2026-06-07T23:26:20.9397379Z         "impl",
2026-06-07T23:26:20.9397465Z         "unit"
2026-06-07T23:26:20.9397578Z       ],
2026-06-07T23:26:20.9397663Z       "stages": {
2026-06-07T23:26:20.9397749Z         "doc": {
2026-06-07T23:26:20.9397849Z           "complete": false,
2026-06-07T23:26:20.9397939Z           "evidence": []
2026-06-07T23:26:20.9398025Z         },
2026-06-07T23:26:20.9398117Z         "impl": {
2026-06-07T23:26:20.9398211Z           "complete": true,
2026-06-07T23:26:20.9398302Z           "evidence": [
2026-06-07T23:26:20.9398384Z             {
2026-06-07T23:26:20.9398517Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9398612Z               "line": 641
2026-06-07T23:26:20.9398694Z             }
2026-06-07T23:26:20.9398779Z           ]
2026-06-07T23:26:20.9398865Z         },
2026-06-07T23:26:20.9398951Z         "int": {
2026-06-07T23:26:20.9399218Z           "complete": false,
2026-06-07T23:26:20.9399309Z           "evidence": []
2026-06-07T23:26:20.9399399Z         },
2026-06-07T23:26:20.9399484Z         "unit": {
2026-06-07T23:26:20.9399575Z           "complete": true,
2026-06-07T23:26:20.9399752Z           "evidence": [
2026-06-07T23:26:20.9399836Z             {
2026-06-07T23:26:20.9399961Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9400050Z               "line": 755
2026-06-07T23:26:20.9400135Z             }
2026-06-07T23:26:20.9400220Z           ]
2026-06-07T23:26:20.9400306Z         }
2026-06-07T23:26:20.9400393Z       }
2026-06-07T23:26:20.9400473Z     },
2026-06-07T23:26:20.9400554Z     {
2026-06-07T23:26:20.9400664Z       "id": "REQ-HAZARD-LOCAL-API-AUTH",
2026-06-07T23:26:20.9400888Z       "title": "Every local `api` mutation authenticated to an endpoint/session (codex #13)",
2026-06-07T23:26:20.9400989Z       "requiredStages": [
2026-06-07T23:26:20.9401074Z         "impl",
2026-06-07T23:26:20.9401169Z         "unit"
2026-06-07T23:26:20.9401251Z       ],
2026-06-07T23:26:20.9401336Z       "stages": {
2026-06-07T23:26:20.9401417Z         "doc": {
2026-06-07T23:26:20.9401517Z           "complete": false,
2026-06-07T23:26:20.9401613Z           "evidence": []
2026-06-07T23:26:20.9401698Z         },
2026-06-07T23:26:20.9401789Z         "impl": {
2026-06-07T23:26:20.9401881Z           "complete": true,
2026-06-07T23:26:20.9401976Z           "evidence": [
2026-06-07T23:26:20.9402056Z             {
2026-06-07T23:26:20.9402176Z               "path": "crates/spt/src/api/auth.rs",
2026-06-07T23:26:20.9402262Z               "line": 14
2026-06-07T23:26:20.9402346Z             },
2026-06-07T23:26:20.9402428Z             {
2026-06-07T23:26:20.9402539Z               "path": "crates/spt/src/api/mod.rs",
2026-06-07T23:26:20.9402628Z               "line": 411
2026-06-07T23:26:20.9402713Z             }
2026-06-07T23:26:20.9402793Z           ]
2026-06-07T23:26:20.9402876Z         },
2026-06-07T23:26:20.9402967Z         "int": {
2026-06-07T23:26:20.9403061Z           "complete": false,
2026-06-07T23:26:20.9403147Z           "evidence": []
2026-06-07T23:26:20.9403233Z         },
2026-06-07T23:26:20.9403319Z         "unit": {
2026-06-07T23:26:20.9403414Z           "complete": true,
2026-06-07T23:26:20.9403506Z           "evidence": [
2026-06-07T23:26:20.9403591Z             {
2026-06-07T23:26:20.9403704Z               "path": "crates/spt/src/api/auth.rs",
2026-06-07T23:26:20.9403792Z               "line": 130
2026-06-07T23:26:20.9403877Z             },
2026-06-07T23:26:20.9403958Z             {
2026-06-07T23:26:20.9404063Z               "path": "crates/spt/src/api/auth.rs",
2026-06-07T23:26:20.9404154Z               "line": 138
2026-06-07T23:26:20.9404239Z             },
2026-06-07T23:26:20.9404324Z             {
2026-06-07T23:26:20.9404426Z               "path": "crates/spt/src/api/auth.rs",
2026-06-07T23:26:20.9404516Z               "line": 146
2026-06-07T23:26:20.9404606Z             },
2026-06-07T23:26:20.9404697Z             {
2026-06-07T23:26:20.9404798Z               "path": "crates/spt/src/api/auth.rs",
2026-06-07T23:26:20.9404878Z               "line": 154
2026-06-07T23:26:20.9404963Z             },
2026-06-07T23:26:20.9405046Z             {
2026-06-07T23:26:20.9405363Z               "path": "crates/spt/src/api/auth.rs",
2026-06-07T23:26:20.9405468Z               "line": 162
2026-06-07T23:26:20.9405552Z             },
2026-06-07T23:26:20.9405628Z             {
2026-06-07T23:26:20.9405733Z               "path": "crates/spt/src/api/auth.rs",
2026-06-07T23:26:20.9405819Z               "line": 170
2026-06-07T23:26:20.9405894Z             }
2026-06-07T23:26:20.9405985Z           ]
2026-06-07T23:26:20.9406068Z         }
2026-06-07T23:26:20.9406153Z       }
2026-06-07T23:26:20.9406228Z     },
2026-06-07T23:26:20.9406314Z     {
2026-06-07T23:26:20.9406443Z       "id": "REQ-HAZARD-PAIR-RATE-LIMIT",
2026-06-07T23:26:20.9407521Z       "title": "Subnet-global pairing rate limit: one active ceremony per subnet, shared attempt counter, exponential backoff — a public pre-trust relay + multiple seed-holders otherwise enables distributed SPAKE2 guessing (and ±1 TOTP window triples the valid-password space) (ADR-0005 #11)",
2026-06-07T23:26:20.9407740Z       "requiredStages": [
2026-06-07T23:26:20.9407925Z         "impl",
2026-06-07T23:26:20.9408011Z         "unit"
2026-06-07T23:26:20.9408094Z       ],
2026-06-07T23:26:20.9408180Z       "stages": {
2026-06-07T23:26:20.9408266Z         "doc": {
2026-06-07T23:26:20.9408362Z           "complete": false,
2026-06-07T23:26:20.9408452Z           "evidence": []
2026-06-07T23:26:20.9408537Z         },
2026-06-07T23:26:20.9408625Z         "impl": {
2026-06-07T23:26:20.9408720Z           "complete": true,
2026-06-07T23:26:20.9408809Z           "evidence": [
2026-06-07T23:26:20.9408896Z             {
2026-06-07T23:26:20.9409049Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-07T23:26:20.9409148Z               "line": 34
2026-06-07T23:26:20.9409230Z             }
2026-06-07T23:26:20.9409325Z           ]
2026-06-07T23:26:20.9409410Z         },
2026-06-07T23:26:20.9409496Z         "int": {
2026-06-07T23:26:20.9409593Z           "complete": false,
2026-06-07T23:26:20.9409673Z           "evidence": []
2026-06-07T23:26:20.9409763Z         },
2026-06-07T23:26:20.9409850Z         "unit": {
2026-06-07T23:26:20.9409936Z           "complete": true,
2026-06-07T23:26:20.9410016Z           "evidence": [
2026-06-07T23:26:20.9410097Z             {
2026-06-07T23:26:20.9410237Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-07T23:26:20.9410340Z               "line": 188
2026-06-07T23:26:20.9410434Z             },
2026-06-07T23:26:20.9410516Z             {
2026-06-07T23:26:20.9410652Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-07T23:26:20.9410746Z               "line": 200
2026-06-07T23:26:20.9410828Z             },
2026-06-07T23:26:20.9410915Z             {
2026-06-07T23:26:20.9411043Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-07T23:26:20.9411143Z               "line": 211
2026-06-07T23:26:20.9411224Z             },
2026-06-07T23:26:20.9411310Z             {
2026-06-07T23:26:20.9411443Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-07T23:26:20.9411534Z               "line": 253
2026-06-07T23:26:20.9411620Z             },
2026-06-07T23:26:20.9411700Z             {
2026-06-07T23:26:20.9411830Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-07T23:26:20.9411920Z               "line": 277
2026-06-07T23:26:20.9412006Z             },
2026-06-07T23:26:20.9412097Z             {
2026-06-07T23:26:20.9412221Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-07T23:26:20.9412311Z               "line": 300
2026-06-07T23:26:20.9412393Z             },
2026-06-07T23:26:20.9412479Z             {
2026-06-07T23:26:20.9412611Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-07T23:26:20.9412707Z               "line": 316
2026-06-07T23:26:20.9412793Z             }
2026-06-07T23:26:20.9412878Z           ]
2026-06-07T23:26:20.9412964Z         }
2026-06-07T23:26:20.9413046Z       }
2026-06-07T23:26:20.9413128Z     },
2026-06-07T23:26:20.9413216Z     {
2026-06-07T23:26:20.9413330Z       "id": "REQ-HAZARD-PAIR-SEED-ROTATION",
2026-06-07T23:26:20.9413832Z       "title": "Removing a node rotates the subnet seed (epoch bump) so an old node/old seed cannot rejoin; trust-store delete alone is NOT revocation because the seed is replicated to every trusted node (ADR-0005 #10)",
2026-06-07T23:26:20.9413926Z       "requiredStages": [
2026-06-07T23:26:20.9414017Z         "impl",
2026-06-07T23:26:20.9414099Z         "unit"
2026-06-07T23:26:20.9414189Z       ],
2026-06-07T23:26:20.9414274Z       "stages": {
2026-06-07T23:26:20.9414361Z         "doc": {
2026-06-07T23:26:20.9414456Z           "complete": false,
2026-06-07T23:26:20.9414542Z           "evidence": []
2026-06-07T23:26:20.9414627Z         },
2026-06-07T23:26:20.9414790Z         "impl": {
2026-06-07T23:26:20.9414880Z           "complete": true,
2026-06-07T23:26:20.9414976Z           "evidence": [
2026-06-07T23:26:20.9415057Z             {
2026-06-07T23:26:20.9415181Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-07T23:26:20.9415528Z               "line": 29
2026-06-07T23:26:20.9415626Z             },
2026-06-07T23:26:20.9415697Z             {
2026-06-07T23:26:20.9415814Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-07T23:26:20.9415899Z               "line": 154
2026-06-07T23:26:20.9415985Z             },
2026-06-07T23:26:20.9416075Z             {
2026-06-07T23:26:20.9416188Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-07T23:26:20.9416279Z               "line": 173
2026-06-07T23:26:20.9416355Z             },
2026-06-07T23:26:20.9416436Z             {
2026-06-07T23:26:20.9416560Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-07T23:26:20.9416670Z               "line": 200
2026-06-07T23:26:20.9416751Z             }
2026-06-07T23:26:20.9416846Z           ]
2026-06-07T23:26:20.9416933Z         },
2026-06-07T23:26:20.9417103Z         "int": {
2026-06-07T23:26:20.9417204Z           "complete": false,
2026-06-07T23:26:20.9417295Z           "evidence": []
2026-06-07T23:26:20.9417386Z         },
2026-06-07T23:26:20.9417475Z         "unit": {
2026-06-07T23:26:20.9417567Z           "complete": true,
2026-06-07T23:26:20.9417657Z           "evidence": [
2026-06-07T23:26:20.9417738Z             {
2026-06-07T23:26:20.9417853Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-07T23:26:20.9417948Z               "line": 276
2026-06-07T23:26:20.9418028Z             },
2026-06-07T23:26:20.9418115Z             {
2026-06-07T23:26:20.9418226Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-07T23:26:20.9418314Z               "line": 291
2026-06-07T23:26:20.9418400Z             },
2026-06-07T23:26:20.9418485Z             {
2026-06-07T23:26:20.9418595Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-07T23:26:20.9418683Z               "line": 310
2026-06-07T23:26:20.9418773Z             },
2026-06-07T23:26:20.9418855Z             {
2026-06-07T23:26:20.9418970Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-07T23:26:20.9419060Z               "line": 326
2026-06-07T23:26:20.9419146Z             },
2026-06-07T23:26:20.9419227Z             {
2026-06-07T23:26:20.9419336Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-07T23:26:20.9419432Z               "line": 385
2026-06-07T23:26:20.9419514Z             },
2026-06-07T23:26:20.9419604Z             {
2026-06-07T23:26:20.9419713Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-07T23:26:20.9419800Z               "line": 399
2026-06-07T23:26:20.9419880Z             },
2026-06-07T23:26:20.9419952Z             {
2026-06-07T23:26:20.9420061Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-07T23:26:20.9420149Z               "line": 410
2026-06-07T23:26:20.9420218Z             },
2026-06-07T23:26:20.9420304Z             {
2026-06-07T23:26:20.9420410Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-07T23:26:20.9420496Z               "line": 421
2026-06-07T23:26:20.9420600Z             }
2026-06-07T23:26:20.9420700Z           ]
2026-06-07T23:26:20.9420783Z         }
2026-06-07T23:26:20.9420867Z       }
2026-06-07T23:26:20.9420947Z     },
2026-06-07T23:26:20.9421028Z     {
2026-06-07T23:26:20.9421151Z       "id": "REQ-HAZARD-PAIR-TRANSCRIPT-BIND",
2026-06-07T23:26:20.9421794Z       "title": "Pairing transcript binds roles, both node pubkeys, subnet ID, seed epoch, TOTP time-step, and confirmation MACs — or unknown-key-share/reflection/wrong-subnet/replay pairing remain possible (ADR-0005 #12)",
2026-06-07T23:26:20.9421898Z       "requiredStages": [
2026-06-07T23:26:20.9421984Z         "impl",
2026-06-07T23:26:20.9422071Z         "unit"
2026-06-07T23:26:20.9422151Z       ],
2026-06-07T23:26:20.9422237Z       "stages": {
2026-06-07T23:26:20.9422323Z         "doc": {
2026-06-07T23:26:20.9422533Z           "complete": false,
2026-06-07T23:26:20.9422623Z           "evidence": []
2026-06-07T23:26:20.9422705Z         },
2026-06-07T23:26:20.9422795Z         "impl": {
2026-06-07T23:26:20.9422886Z           "complete": true,
2026-06-07T23:26:20.9423091Z           "evidence": [
2026-06-07T23:26:20.9423176Z             {
2026-06-07T23:26:20.9423306Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-07T23:26:20.9423396Z               "line": 27
2026-06-07T23:26:20.9423486Z             },
2026-06-07T23:26:20.9423577Z             {
2026-06-07T23:26:20.9423702Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-07T23:26:20.9423796Z               "line": 110
2026-06-07T23:26:20.9423885Z             },
2026-06-07T23:26:20.9423962Z             {
2026-06-07T23:26:20.9424091Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-07T23:26:20.9424176Z               "line": 153
2026-06-07T23:26:20.9424258Z             },
2026-06-07T23:26:20.9424349Z             {
2026-06-07T23:26:20.9424472Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-07T23:26:20.9424558Z               "line": 182
2026-06-07T23:26:20.9424644Z             },
2026-06-07T23:26:20.9424735Z             {
2026-06-07T23:26:20.9424878Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-07T23:26:20.9424959Z               "line": 31
2026-06-07T23:26:20.9425044Z             },
2026-06-07T23:26:20.9425130Z             {
2026-06-07T23:26:20.9425450Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-07T23:26:20.9425541Z               "line": 113
2026-06-07T23:26:20.9425622Z             },
2026-06-07T23:26:20.9425702Z             {
2026-06-07T23:26:20.9425836Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-07T23:26:20.9425928Z               "line": 138
2026-06-07T23:26:20.9426008Z             }
2026-06-07T23:26:20.9426089Z           ]
2026-06-07T23:26:20.9426176Z         },
2026-06-07T23:26:20.9426299Z         "int": {
2026-06-07T23:26:20.9426398Z           "complete": false,
2026-06-07T23:26:20.9426483Z           "evidence": []
2026-06-07T23:26:20.9426569Z         },
2026-06-07T23:26:20.9426640Z         "unit": {
2026-06-07T23:26:20.9426724Z           "complete": true,
2026-06-07T23:26:20.9426810Z           "evidence": [
2026-06-07T23:26:20.9426897Z             {
2026-06-07T23:26:20.9427101Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-07T23:26:20.9427183Z               "line": 261
2026-06-07T23:26:20.9427268Z             },
2026-06-07T23:26:20.9427362Z             {
2026-06-07T23:26:20.9427488Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-07T23:26:20.9427564Z               "line": 276
2026-06-07T23:26:20.9427654Z             },
2026-06-07T23:26:20.9427735Z             {
2026-06-07T23:26:20.9427851Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-07T23:26:20.9427936Z               "line": 293
2026-06-07T23:26:20.9428006Z             },
2026-06-07T23:26:20.9428132Z             {
2026-06-07T23:26:20.9428254Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-07T23:26:20.9428350Z               "line": 310
2026-06-07T23:26:20.9428437Z             },
2026-06-07T23:26:20.9428523Z             {
2026-06-07T23:26:20.9428650Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-07T23:26:20.9428738Z               "line": 327
2026-06-07T23:26:20.9428824Z             },
2026-06-07T23:26:20.9428907Z             {
2026-06-07T23:26:20.9429035Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-07T23:26:20.9429145Z               "line": 366
2026-06-07T23:26:20.9429238Z             },
2026-06-07T23:26:20.9429324Z             {
2026-06-07T23:26:20.9429458Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-07T23:26:20.9429549Z               "line": 179
2026-06-07T23:26:20.9429639Z             },
2026-06-07T23:26:20.9429972Z             {
2026-06-07T23:26:20.9430111Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-07T23:26:20.9430197Z               "line": 194
2026-06-07T23:26:20.9430287Z             },
2026-06-07T23:26:20.9430365Z             {
2026-06-07T23:26:20.9430583Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-07T23:26:20.9430679Z               "line": 204
2026-06-07T23:26:20.9430783Z             },
2026-06-07T23:26:20.9430917Z             {
2026-06-07T23:26:20.9431052Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-07T23:26:20.9431145Z               "line": 259
2026-06-07T23:26:20.9431227Z             },
2026-06-07T23:26:20.9431314Z             {
2026-06-07T23:26:20.9431450Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-07T23:26:20.9431531Z               "line": 269
2026-06-07T23:26:20.9431621Z             },
2026-06-07T23:26:20.9431707Z             {
2026-06-07T23:26:20.9431839Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-07T23:26:20.9431934Z               "line": 283
2026-06-07T23:26:20.9432021Z             }
2026-06-07T23:26:20.9432106Z           ]
2026-06-07T23:26:20.9432186Z         }
2026-06-07T23:26:20.9432277Z       }
2026-06-07T23:26:20.9432359Z     },
2026-06-07T23:26:20.9432435Z     {
2026-06-07T23:26:20.9432554Z       "id": "REQ-HAZARD-PARENT-PID-PREFER",
2026-06-07T23:26:20.9432740Z       "title": "Prefer stable parent PID / broker handle over ephemeral PID (2.1)",
2026-06-07T23:26:20.9432839Z       "requiredStages": [],
2026-06-07T23:26:20.9432922Z       "stages": {
2026-06-07T23:26:20.9433007Z         "doc": {
2026-06-07T23:26:20.9433102Z           "complete": false,
2026-06-07T23:26:20.9433193Z           "evidence": []
2026-06-07T23:26:20.9433279Z         },
2026-06-07T23:26:20.9433369Z         "impl": {
2026-06-07T23:26:20.9433465Z           "complete": false,
2026-06-07T23:26:20.9433551Z           "evidence": []
2026-06-07T23:26:20.9433637Z         },
2026-06-07T23:26:20.9433726Z         "int": {
2026-06-07T23:26:20.9433827Z           "complete": false,
2026-06-07T23:26:20.9433919Z           "evidence": []
2026-06-07T23:26:20.9434008Z         },
2026-06-07T23:26:20.9434099Z         "unit": {
2026-06-07T23:26:20.9434191Z           "complete": false,
2026-06-07T23:26:20.9434285Z           "evidence": []
2026-06-07T23:26:20.9434370Z         }
2026-06-07T23:26:20.9434460Z       }
2026-06-07T23:26:20.9434542Z     },
2026-06-07T23:26:20.9434623Z     {
2026-06-07T23:26:20.9434755Z       "id": "REQ-HAZARD-PSYCHE-OUTBOUND-PROXY",
2026-06-07T23:26:20.9435586Z       "title": "Psyche outbound captured + sanitized: the live-Psyche turn driver captures stdout (never Stdio::null), and the daemon strips/re-stamps Psyche-supplied from=/target and constrains routing (reply→__REPLY_TO__ sender, notify→own user/subnet) (7.3)",
2026-06-07T23:26:20.9435700Z       "requiredStages": [
2026-06-07T23:26:20.9435791Z         "impl",
2026-06-07T23:26:20.9435877Z         "unit"
2026-06-07T23:26:20.9435967Z       ],
2026-06-07T23:26:20.9436053Z       "stages": {
2026-06-07T23:26:20.9436140Z         "doc": {
2026-06-07T23:26:20.9436234Z           "complete": false,
2026-06-07T23:26:20.9436325Z           "evidence": []
2026-06-07T23:26:20.9436401Z         },
2026-06-07T23:26:20.9436488Z         "impl": {
2026-06-07T23:26:20.9436587Z           "complete": true,
2026-06-07T23:26:20.9436663Z           "evidence": [
2026-06-07T23:26:20.9436750Z             {
2026-06-07T23:26:20.9436882Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-07T23:26:20.9437048Z               "line": 26
2026-06-07T23:26:20.9437129Z             },
2026-06-07T23:26:20.9437209Z             {
2026-06-07T23:26:20.9437351Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-07T23:26:20.9437452Z               "line": 95
2026-06-07T23:26:20.9437543Z             },
2026-06-07T23:26:20.9437627Z             {
2026-06-07T23:26:20.9437743Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-07T23:26:20.9437947Z               "line": 166
2026-06-07T23:26:20.9438034Z             },
2026-06-07T23:26:20.9438120Z             {
2026-06-07T23:26:20.9438242Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-07T23:26:20.9438415Z               "line": 19
2026-06-07T23:26:20.9438501Z             },
2026-06-07T23:26:20.9438595Z             {
2026-06-07T23:26:20.9438711Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-07T23:26:20.9438801Z               "line": 50
2026-06-07T23:26:20.9438891Z             },
2026-06-07T23:26:20.9438973Z             {
2026-06-07T23:26:20.9439092Z               "path": "crates/spt-live/src/turn.rs",
2026-06-07T23:26:20.9439178Z               "line": 18
2026-06-07T23:26:20.9439273Z             },
2026-06-07T23:26:20.9439360Z             {
2026-06-07T23:26:20.9439467Z               "path": "crates/spt-live/src/turn.rs",
2026-06-07T23:26:20.9439567Z               "line": 71
2026-06-07T23:26:20.9439653Z             },
2026-06-07T23:26:20.9439748Z             {
2026-06-07T23:26:20.9439860Z               "path": "crates/spt-proto/src/event.rs",
2026-06-07T23:26:20.9439952Z               "line": 70
2026-06-07T23:26:20.9440047Z             }
2026-06-07T23:26:20.9440132Z           ]
2026-06-07T23:26:20.9440227Z         },
2026-06-07T23:26:20.9440315Z         "int": {
2026-06-07T23:26:20.9440410Z           "complete": false,
2026-06-07T23:26:20.9440499Z           "evidence": []
2026-06-07T23:26:20.9440595Z         },
2026-06-07T23:26:20.9440690Z         "unit": {
2026-06-07T23:26:20.9440785Z           "complete": true,
2026-06-07T23:26:20.9440871Z           "evidence": [
2026-06-07T23:26:20.9440958Z             {
2026-06-07T23:26:20.9441077Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-07T23:26:20.9441172Z               "line": 289
2026-06-07T23:26:20.9441264Z             },
2026-06-07T23:26:20.9441348Z             {
2026-06-07T23:26:20.9441463Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-07T23:26:20.9441559Z               "line": 308
2026-06-07T23:26:20.9441649Z             },
2026-06-07T23:26:20.9441735Z             {
2026-06-07T23:26:20.9441850Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-07T23:26:20.9441941Z               "line": 336
2026-06-07T23:26:20.9442034Z             },
2026-06-07T23:26:20.9442119Z             {
2026-06-07T23:26:20.9442239Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-07T23:26:20.9442328Z               "line": 399
2026-06-07T23:26:20.9442418Z             },
2026-06-07T23:26:20.9442499Z             {
2026-06-07T23:26:20.9442624Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-07T23:26:20.9442718Z               "line": 410
2026-06-07T23:26:20.9442804Z             },
2026-06-07T23:26:20.9442890Z             {
2026-06-07T23:26:20.9443004Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-07T23:26:20.9443099Z               "line": 441
2026-06-07T23:26:20.9443187Z             },
2026-06-07T23:26:20.9443271Z             {
2026-06-07T23:26:20.9443395Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-07T23:26:20.9443487Z               "line": 452
2026-06-07T23:26:20.9443581Z             },
2026-06-07T23:26:20.9443667Z             {
2026-06-07T23:26:20.9443787Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-07T23:26:20.9443873Z               "line": 77
2026-06-07T23:26:20.9443963Z             },
2026-06-07T23:26:20.9444053Z             {
2026-06-07T23:26:20.9444164Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-07T23:26:20.9444258Z               "line": 97
2026-06-07T23:26:20.9444339Z             },
2026-06-07T23:26:20.9444431Z             {
2026-06-07T23:26:20.9444540Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-07T23:26:20.9444634Z               "line": 112
2026-06-07T23:26:20.9444731Z             },
2026-06-07T23:26:20.9444813Z             {
2026-06-07T23:26:20.9444930Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-07T23:26:20.9445102Z               "line": 123
2026-06-07T23:26:20.9445192Z             },
2026-06-07T23:26:20.9445273Z             {
2026-06-07T23:26:20.9445387Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-07T23:26:20.9445474Z               "line": 130
2026-06-07T23:26:20.9445635Z             },
2026-06-07T23:26:20.9445737Z             {
2026-06-07T23:26:20.9445851Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-07T23:26:20.9445945Z               "line": 145
2026-06-07T23:26:20.9446032Z             },
2026-06-07T23:26:20.9446113Z             {
2026-06-07T23:26:20.9446217Z               "path": "crates/spt-live/src/turn.rs",
2026-06-07T23:26:20.9446303Z               "line": 115
2026-06-07T23:26:20.9446413Z             },
2026-06-07T23:26:20.9446508Z             {
2026-06-07T23:26:20.9446618Z               "path": "crates/spt-live/src/turn.rs",
2026-06-07T23:26:20.9446705Z               "line": 130
2026-06-07T23:26:20.9446789Z             },
2026-06-07T23:26:20.9446875Z             {
2026-06-07T23:26:20.9447090Z               "path": "crates/spt-proto/src/event.rs",
2026-06-07T23:26:20.9447189Z               "line": 336
2026-06-07T23:26:20.9447277Z             }
2026-06-07T23:26:20.9447367Z           ]
2026-06-07T23:26:20.9447461Z         }
2026-06-07T23:26:20.9447551Z       }
2026-06-07T23:26:20.9447642Z     },
2026-06-07T23:26:20.9447727Z     {
2026-06-07T23:26:20.9447853Z       "id": "REQ-HAZARD-REGISTRY-CONCURRENT",
2026-06-07T23:26:20.9448103Z       "title": "Concurrent SQLite openers (registry/spool) must not fail with 'database is locked' (4.7)",
2026-06-07T23:26:20.9448206Z       "requiredStages": [
2026-06-07T23:26:20.9448298Z         "impl",
2026-06-07T23:26:20.9448388Z         "unit"
2026-06-07T23:26:20.9448478Z       ],
2026-06-07T23:26:20.9448569Z       "stages": {
2026-06-07T23:26:20.9448660Z         "doc": {
2026-06-07T23:26:20.9448755Z           "complete": true,
2026-06-07T23:26:20.9448850Z           "evidence": [
2026-06-07T23:26:20.9448942Z             {
2026-06-07T23:26:20.9449051Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-07T23:26:20.9449146Z               "line": 137
2026-06-07T23:26:20.9449233Z             }
2026-06-07T23:26:20.9449323Z           ]
2026-06-07T23:26:20.9449404Z         },
2026-06-07T23:26:20.9449499Z         "impl": {
2026-06-07T23:26:20.9449600Z           "complete": true,
2026-06-07T23:26:20.9449690Z           "evidence": [
2026-06-07T23:26:20.9449766Z             {
2026-06-07T23:26:20.9449877Z               "path": "crates/spt-store/src/db.rs",
2026-06-07T23:26:20.9449967Z               "line": 29
2026-06-07T23:26:20.9450056Z             },
2026-06-07T23:26:20.9450146Z             {
2026-06-07T23:26:20.9450285Z               "path": "crates/spt-store/src/notif.rs",
2026-06-07T23:26:20.9450373Z               "line": 101
2026-06-07T23:26:20.9450463Z             },
2026-06-07T23:26:20.9450545Z             {
2026-06-07T23:26:20.9450674Z               "path": "crates/spt-store/src/registry.rs",
2026-06-07T23:26:20.9450768Z               "line": 30
2026-06-07T23:26:20.9450865Z             },
2026-06-07T23:26:20.9450950Z             {
2026-06-07T23:26:20.9451059Z               "path": "crates/spt-store/src/spool.rs",
2026-06-07T23:26:20.9451151Z               "line": 48
2026-06-07T23:26:20.9451241Z             }
2026-06-07T23:26:20.9451327Z           ]
2026-06-07T23:26:20.9451413Z         },
2026-06-07T23:26:20.9451504Z         "int": {
2026-06-07T23:26:20.9451603Z           "complete": false,
2026-06-07T23:26:20.9451698Z           "evidence": []
2026-06-07T23:26:20.9451790Z         },
2026-06-07T23:26:20.9451881Z         "unit": {
2026-06-07T23:26:20.9451975Z           "complete": true,
2026-06-07T23:26:20.9452066Z           "evidence": [
2026-06-07T23:26:20.9452153Z             {
2026-06-07T23:26:20.9452275Z               "path": "crates/spt-store/src/registry.rs",
2026-06-07T23:26:20.9452362Z               "line": 162
2026-06-07T23:26:20.9452448Z             }
2026-06-07T23:26:20.9452538Z           ]
2026-06-07T23:26:20.9452628Z         }
2026-06-07T23:26:20.9452828Z       }
2026-06-07T23:26:20.9452916Z     },
2026-06-07T23:26:20.9453006Z     {
2026-06-07T23:26:20.9453122Z       "id": "REQ-HAZARD-REGISTRY-DIR-CREATE",
2026-06-07T23:26:20.9453503Z       "title": "SQLite store opens create their parent dir themselves — a fresh-home registry op must not SQLITE_CANTOPEN (4.9)",
2026-06-07T23:26:20.9453712Z       "requiredStages": [
2026-06-07T23:26:20.9453808Z         "doc",
2026-06-07T23:26:20.9453898Z         "impl",
2026-06-07T23:26:20.9453993Z         "unit"
2026-06-07T23:26:20.9454081Z       ],
2026-06-07T23:26:20.9454165Z       "stages": {
2026-06-07T23:26:20.9454255Z         "doc": {
2026-06-07T23:26:20.9454347Z           "complete": true,
2026-06-07T23:26:20.9454437Z           "evidence": [
2026-06-07T23:26:20.9454523Z             {
2026-06-07T23:26:20.9454638Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-07T23:26:20.9454729Z               "line": 149
2026-06-07T23:26:20.9454818Z             }
2026-06-07T23:26:20.9454904Z           ]
2026-06-07T23:26:20.9455161Z         },
2026-06-07T23:26:20.9455257Z         "impl": {
2026-06-07T23:26:20.9455349Z           "complete": true,
2026-06-07T23:26:20.9455438Z           "evidence": [
2026-06-07T23:26:20.9455523Z             {
2026-06-07T23:26:20.9455657Z               "path": "crates/spt-store/src/registry.rs",
2026-06-07T23:26:20.9455753Z               "line": 22
2026-06-07T23:26:20.9455838Z             }
2026-06-07T23:26:20.9455919Z           ]
2026-06-07T23:26:20.9456005Z         },
2026-06-07T23:26:20.9456091Z         "int": {
2026-06-07T23:26:20.9456190Z           "complete": false,
2026-06-07T23:26:20.9456282Z           "evidence": []
2026-06-07T23:26:20.9456372Z         },
2026-06-07T23:26:20.9456462Z         "unit": {
2026-06-07T23:26:20.9456548Z           "complete": true,
2026-06-07T23:26:20.9456640Z           "evidence": [
2026-06-07T23:26:20.9456720Z             {
2026-06-07T23:26:20.9456892Z               "path": "crates/spt-store/src/registry.rs",
2026-06-07T23:26:20.9457082Z               "line": 298
2026-06-07T23:26:20.9457163Z             }
2026-06-07T23:26:20.9457260Z           ]
2026-06-07T23:26:20.9457345Z         }
2026-06-07T23:26:20.9457430Z       }
2026-06-07T23:26:20.9457522Z     },
2026-06-07T23:26:20.9457617Z     {
2026-06-07T23:26:20.9457735Z       "id": "REQ-HAZARD-REGISTRY-EPOCH-LEASE",
2026-06-07T23:26:20.9458178Z       "title": "Registry merge ordered by per-node monotonic epoch, never wall-clock — a stale Active can't clobber a newer Offline (4.8, red-team #8)",
2026-06-07T23:26:20.9458278Z       "requiredStages": [
2026-06-07T23:26:20.9458372Z         "impl",
2026-06-07T23:26:20.9458461Z         "unit"
2026-06-07T23:26:20.9458543Z       ],
2026-06-07T23:26:20.9458639Z       "stages": {
2026-06-07T23:26:20.9458729Z         "doc": {
2026-06-07T23:26:20.9458829Z           "complete": true,
2026-06-07T23:26:20.9458915Z           "evidence": [
2026-06-07T23:26:20.9459010Z             {
2026-06-07T23:26:20.9459125Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-07T23:26:20.9459220Z               "line": 143
2026-06-07T23:26:20.9459306Z             }
2026-06-07T23:26:20.9459391Z           ]
2026-06-07T23:26:20.9459479Z         },
2026-06-07T23:26:20.9459564Z         "impl": {
2026-06-07T23:26:20.9459668Z           "complete": true,
2026-06-07T23:26:20.9459764Z           "evidence": [
2026-06-07T23:26:20.9459850Z             {
2026-06-07T23:26:20.9459979Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9460069Z               "line": 486
2026-06-07T23:26:20.9460151Z             },
2026-06-07T23:26:20.9460235Z             {
2026-06-07T23:26:20.9460364Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9460456Z               "line": 178
2026-06-07T23:26:20.9460541Z             },
2026-06-07T23:26:20.9460625Z             {
2026-06-07T23:26:20.9460745Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9460840Z               "line": 209
2026-06-07T23:26:20.9460929Z             },
2026-06-07T23:26:20.9461125Z             {
2026-06-07T23:26:20.9461243Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-07T23:26:20.9461333Z               "line": 15
2026-06-07T23:26:20.9461425Z             }
2026-06-07T23:26:20.9461596Z           ]
2026-06-07T23:26:20.9461691Z         },
2026-06-07T23:26:20.9461778Z         "int": {
2026-06-07T23:26:20.9461873Z           "complete": false,
2026-06-07T23:26:20.9461968Z           "evidence": []
2026-06-07T23:26:20.9462050Z         },
2026-06-07T23:26:20.9462140Z         "unit": {
2026-06-07T23:26:20.9462230Z           "complete": true,
2026-06-07T23:26:20.9462326Z           "evidence": [
2026-06-07T23:26:20.9462412Z             {
2026-06-07T23:26:20.9462540Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9462640Z               "line": 724
2026-06-07T23:26:20.9462727Z             },
2026-06-07T23:26:20.9462816Z             {
2026-06-07T23:26:20.9462941Z               "path": "crates/spt-daemon/tests/replicate.rs",
2026-06-07T23:26:20.9463047Z               "line": 87
2026-06-07T23:26:20.9463131Z             },
2026-06-07T23:26:20.9463221Z             {
2026-06-07T23:26:20.9463340Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9463439Z               "line": 729
2026-06-07T23:26:20.9463528Z             },
2026-06-07T23:26:20.9463614Z             {
2026-06-07T23:26:20.9463740Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9463828Z               "line": 748
2026-06-07T23:26:20.9463919Z             },
2026-06-07T23:26:20.9464006Z             {
2026-06-07T23:26:20.9464129Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-07T23:26:20.9464224Z               "line": 167
2026-06-07T23:26:20.9464307Z             },
2026-06-07T23:26:20.9464391Z             {
2026-06-07T23:26:20.9467113Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-07T23:26:20.9467247Z               "line": 77
2026-06-07T23:26:20.9467337Z             },
2026-06-07T23:26:20.9467438Z             {
2026-06-07T23:26:20.9467571Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-07T23:26:20.9467661Z               "line": 94
2026-06-07T23:26:20.9467752Z             },
2026-06-07T23:26:20.9467844Z             {
2026-06-07T23:26:20.9467967Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-07T23:26:20.9468057Z               "line": 114
2026-06-07T23:26:20.9468145Z             }
2026-06-07T23:26:20.9468234Z           ]
2026-06-07T23:26:20.9468319Z         }
2026-06-07T23:26:20.9468407Z       }
2026-06-07T23:26:20.9468492Z     },
2026-06-07T23:26:20.9468581Z     {
2026-06-07T23:26:20.9468700Z       "id": "REQ-HAZARD-REGISTRY-GHOST-ROWS",
2026-06-07T23:26:20.9470005Z       "title": "A dead node identity's registry rows must decay: only the per-(endpoint,node) epoch lease supersedes rows, so without eviction a vanished node's rows are immortal and poison bare-id resolution with phantom AcrossNodes ambiguity — evict rows whose author node has not been heard (admitted inbound feed) within the eviction window; own rows never decay; a revived node re-inserts from its durable epoch within one pump cadence (4.10)",
2026-06-07T23:26:20.9470124Z       "requiredStages": [
2026-06-07T23:26:20.9470214Z         "doc",
2026-06-07T23:26:20.9470305Z         "impl",
2026-06-07T23:26:20.9470391Z         "unit"
2026-06-07T23:26:20.9470472Z       ],
2026-06-07T23:26:20.9470562Z       "stages": {
2026-06-07T23:26:20.9470648Z         "doc": {
2026-06-07T23:26:20.9470753Z           "complete": true,
2026-06-07T23:26:20.9470853Z           "evidence": [
2026-06-07T23:26:20.9470939Z             {
2026-06-07T23:26:20.9471054Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-07T23:26:20.9471143Z               "line": 155
2026-06-07T23:26:20.9471233Z             }
2026-06-07T23:26:20.9471315Z           ]
2026-06-07T23:26:20.9471405Z         },
2026-06-07T23:26:20.9471489Z         "impl": {
2026-06-07T23:26:20.9471588Z           "complete": true,
2026-06-07T23:26:20.9471813Z           "evidence": [
2026-06-07T23:26:20.9471898Z             {
2026-06-07T23:26:20.9472033Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9472127Z               "line": 345
2026-06-07T23:26:20.9472213Z             },
2026-06-07T23:26:20.9472385Z             {
2026-06-07T23:26:20.9472518Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9472610Z               "line": 409
2026-06-07T23:26:20.9472695Z             },
2026-06-07T23:26:20.9472781Z             {
2026-06-07T23:26:20.9472906Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9472991Z               "line": 416
2026-06-07T23:26:20.9473081Z             },
2026-06-07T23:26:20.9473162Z             {
2026-06-07T23:26:20.9473287Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9473376Z               "line": 191
2026-06-07T23:26:20.9473462Z             }
2026-06-07T23:26:20.9473545Z           ]
2026-06-07T23:26:20.9473640Z         },
2026-06-07T23:26:20.9473724Z         "int": {
2026-06-07T23:26:20.9473819Z           "complete": false,
2026-06-07T23:26:20.9473914Z           "evidence": []
2026-06-07T23:26:20.9473999Z         },
2026-06-07T23:26:20.9474088Z         "unit": {
2026-06-07T23:26:20.9474184Z           "complete": true,
2026-06-07T23:26:20.9474275Z           "evidence": [
2026-06-07T23:26:20.9474365Z             {
2026-06-07T23:26:20.9474494Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9474590Z               "line": 1240
2026-06-07T23:26:20.9474671Z             },
2026-06-07T23:26:20.9474761Z             {
2026-06-07T23:26:20.9474881Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9474976Z               "line": 1298
2026-06-07T23:26:20.9475066Z             },
2026-06-07T23:26:20.9475148Z             {
2026-06-07T23:26:20.9475266Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9475356Z               "line": 761
2026-06-07T23:26:20.9475448Z             }
2026-06-07T23:26:20.9475534Z           ]
2026-06-07T23:26:20.9475628Z         }
2026-06-07T23:26:20.9475714Z       }
2026-06-07T23:26:20.9475797Z     },
2026-06-07T23:26:20.9475887Z     {
2026-06-07T23:26:20.9476005Z       "id": "REQ-HAZARD-REGISTRY-STALE-CLEAN",
2026-06-07T23:26:20.9476192Z       "title": "Stale registry entries degrade to fallback, never hard-fail (4.3)",
2026-06-07T23:26:20.9476286Z       "requiredStages": [
2026-06-07T23:26:20.9476382Z         "impl",
2026-06-07T23:26:20.9476469Z         "unit"
2026-06-07T23:26:20.9476558Z       ],
2026-06-07T23:26:20.9476648Z       "stages": {
2026-06-07T23:26:20.9476734Z         "doc": {
2026-06-07T23:26:20.9476835Z           "complete": false,
2026-06-07T23:26:20.9476925Z           "evidence": []
2026-06-07T23:26:20.9477107Z         },
2026-06-07T23:26:20.9477193Z         "impl": {
2026-06-07T23:26:20.9477287Z           "complete": true,
2026-06-07T23:26:20.9477378Z           "evidence": [
2026-06-07T23:26:20.9477469Z             {
2026-06-07T23:26:20.9477587Z               "path": "crates/spt-store/src/proc.rs",
2026-06-07T23:26:20.9477683Z               "line": 15
2026-06-07T23:26:20.9477770Z             },
2026-06-07T23:26:20.9477860Z             {
2026-06-07T23:26:20.9477983Z               "path": "crates/spt-store/src/registry.rs",
2026-06-07T23:26:20.9478075Z               "line": 55
2026-06-07T23:26:20.9478160Z             },
2026-06-07T23:26:20.9478245Z             {
2026-06-07T23:26:20.9478361Z               "path": "crates/spt-store/src/registry.rs",
2026-06-07T23:26:20.9478451Z               "line": 66
2026-06-07T23:26:20.9478541Z             },
2026-06-07T23:26:20.9478622Z             {
2026-06-07T23:26:20.9478742Z               "path": "crates/spt-store/src/registry.rs",
2026-06-07T23:26:20.9478836Z               "line": 115
2026-06-07T23:26:20.9478923Z             },
2026-06-07T23:26:20.9479010Z             {
2026-06-07T23:26:20.9479127Z               "path": "crates/spt-store/src/registry.rs",
2026-06-07T23:26:20.9479317Z               "line": 138
2026-06-07T23:26:20.9479402Z             }
2026-06-07T23:26:20.9479487Z           ]
2026-06-07T23:26:20.9479571Z         },
2026-06-07T23:26:20.9479659Z         "int": {
2026-06-07T23:26:20.9479844Z           "complete": false,
2026-06-07T23:26:20.9479935Z           "evidence": []
2026-06-07T23:26:20.9480026Z         },
2026-06-07T23:26:20.9480106Z         "unit": {
2026-06-07T23:26:20.9480201Z           "complete": true,
2026-06-07T23:26:20.9480289Z           "evidence": [
2026-06-07T23:26:20.9480383Z             {
2026-06-07T23:26:20.9480493Z               "path": "crates/spt-store/src/proc.rs",
2026-06-07T23:26:20.9480584Z               "line": 149
2026-06-07T23:26:20.9480674Z             },
2026-06-07T23:26:20.9480755Z             {
2026-06-07T23:26:20.9480865Z               "path": "crates/spt-store/src/proc.rs",
2026-06-07T23:26:20.9480956Z               "line": 155
2026-06-07T23:26:20.9481041Z             },
2026-06-07T23:26:20.9481127Z             {
2026-06-07T23:26:20.9481248Z               "path": "crates/spt-store/src/proc.rs",
2026-06-07T23:26:20.9481337Z               "line": 169
2026-06-07T23:26:20.9481418Z             },
2026-06-07T23:26:20.9481504Z             {
2026-06-07T23:26:20.9481619Z               "path": "crates/spt-store/src/proc.rs",
2026-06-07T23:26:20.9481708Z               "line": 178
2026-06-07T23:26:20.9481798Z             },
2026-06-07T23:26:20.9481880Z             {
2026-06-07T23:26:20.9482001Z               "path": "crates/spt-store/src/registry.rs",
2026-06-07T23:26:20.9482096Z               "line": 195
2026-06-07T23:26:20.9482182Z             },
2026-06-07T23:26:20.9482264Z             {
2026-06-07T23:26:20.9482382Z               "path": "crates/spt-store/src/registry.rs",
2026-06-07T23:26:20.9482473Z               "line": 208
2026-06-07T23:26:20.9482555Z             },
2026-06-07T23:26:20.9482640Z             {
2026-06-07T23:26:20.9482754Z               "path": "crates/spt-store/src/registry.rs",
2026-06-07T23:26:20.9482846Z               "line": 271
2026-06-07T23:26:20.9482936Z             },
2026-06-07T23:26:20.9483026Z             {
2026-06-07T23:26:20.9483141Z               "path": "crates/spt-store/src/registry.rs",
2026-06-07T23:26:20.9483232Z               "line": 290
2026-06-07T23:26:20.9483317Z             },
2026-06-07T23:26:20.9483402Z             {
2026-06-07T23:26:20.9483518Z               "path": "crates/spt-store/src/registry.rs",
2026-06-07T23:26:20.9483603Z               "line": 319
2026-06-07T23:26:20.9483694Z             }
2026-06-07T23:26:20.9483785Z           ]
2026-06-07T23:26:20.9483866Z         }
2026-06-07T23:26:20.9483955Z       }
2026-06-07T23:26:20.9484037Z     },
2026-06-07T23:26:20.9484124Z     {
2026-06-07T23:26:20.9484237Z       "id": "REQ-HAZARD-RESTART-IDEMPOTENT",
2026-06-07T23:26:20.9484503Z       "title": "Idempotent/exactly-once delivery across brain restart at every broker boundary (codex #14)",
2026-06-07T23:26:20.9484611Z       "requiredStages": [
2026-06-07T23:26:20.9484696Z         "impl",
2026-06-07T23:26:20.9484792Z         "unit",
2026-06-07T23:26:20.9484879Z         "int"
2026-06-07T23:26:20.9484963Z       ],
2026-06-07T23:26:20.9485049Z       "stages": {
2026-06-07T23:26:20.9485169Z         "doc": {
2026-06-07T23:26:20.9485316Z           "complete": false,
2026-06-07T23:26:20.9485460Z           "evidence": []
2026-06-07T23:26:20.9485560Z         },
2026-06-07T23:26:20.9485650Z         "impl": {
2026-06-07T23:26:20.9485746Z           "complete": true,
2026-06-07T23:26:20.9485836Z           "evidence": [
2026-06-07T23:26:20.9485926Z             {
2026-06-07T23:26:20.9486047Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-07T23:26:20.9486137Z               "line": 269
2026-06-07T23:26:20.9486223Z             },
2026-06-07T23:26:20.9486304Z             {
2026-06-07T23:26:20.9486428Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-07T23:26:20.9486512Z               "line": 578
2026-06-07T23:26:20.9486604Z             },
2026-06-07T23:26:20.9486686Z             {
2026-06-07T23:26:20.9486899Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-07T23:26:20.9487091Z               "line": 601
2026-06-07T23:26:20.9487184Z             },
2026-06-07T23:26:20.9487269Z             {
2026-06-07T23:26:20.9487537Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-07T23:26:20.9487628Z               "line": 625
2026-06-07T23:26:20.9487719Z             },
2026-06-07T23:26:20.9487795Z             {
2026-06-07T23:26:20.9487918Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-07T23:26:20.9488010Z               "line": 492
2026-06-07T23:26:20.9488096Z             },
2026-06-07T23:26:20.9488181Z             {
2026-06-07T23:26:20.9488292Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-07T23:26:20.9488386Z               "line": 580
2026-06-07T23:26:20.9488467Z             },
2026-06-07T23:26:20.9488577Z             {
2026-06-07T23:26:20.9488691Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-07T23:26:20.9488782Z               "line": 690
2026-06-07T23:26:20.9488872Z             },
2026-06-07T23:26:20.9488960Z             {
2026-06-07T23:26:20.9489072Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-07T23:26:20.9489159Z               "line": 738
2026-06-07T23:26:20.9489245Z             },
2026-06-07T23:26:20.9489326Z             {
2026-06-07T23:26:20.9489454Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-07T23:26:20.9489570Z               "line": 46
2026-06-07T23:26:20.9489650Z             },
2026-06-07T23:26:20.9489735Z             {
2026-06-07T23:26:20.9489839Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-07T23:26:20.9489930Z               "line": 167
2026-06-07T23:26:20.9490009Z             },
2026-06-07T23:26:20.9490090Z             {
2026-06-07T23:26:20.9490194Z               "path": "crates/spt-daemon/src/wan.rs",
2026-06-07T23:26:20.9490286Z               "line": 71
2026-06-07T23:26:20.9490375Z             },
2026-06-07T23:26:20.9490466Z             {
2026-06-07T23:26:20.9490610Z               "path": "crates/spt-store/src/spool.rs",
2026-06-07T23:26:20.9490704Z               "line": 134
2026-06-07T23:26:20.9490790Z             },
2026-06-07T23:26:20.9490873Z             {
2026-06-07T23:26:20.9490986Z               "path": "crates/spt-store/src/spool.rs",
2026-06-07T23:26:20.9491081Z               "line": 180
2026-06-07T23:26:20.9491168Z             }
2026-06-07T23:26:20.9491258Z           ]
2026-06-07T23:26:20.9491344Z         },
2026-06-07T23:26:20.9491430Z         "int": {
2026-06-07T23:26:20.9491526Z           "complete": true,
2026-06-07T23:26:20.9491615Z           "evidence": [
2026-06-07T23:26:20.9491701Z             {
2026-06-07T23:26:20.9491827Z               "path": "crates/spt-daemon/tests/idempotent.rs",
2026-06-07T23:26:20.9491920Z               "line": 27
2026-06-07T23:26:20.9492002Z             },
2026-06-07T23:26:20.9492093Z             {
2026-06-07T23:26:20.9492221Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-07T23:26:20.9492316Z               "line": 128
2026-06-07T23:26:20.9492406Z             },
2026-06-07T23:26:20.9492496Z             {
2026-06-07T23:26:20.9492609Z               "path": "crates/spt-daemon/tests/netstream.rs",
2026-06-07T23:26:20.9492704Z               "line": 199
2026-06-07T23:26:20.9492795Z             }
2026-06-07T23:26:20.9492881Z           ]
2026-06-07T23:26:20.9492966Z         },
2026-06-07T23:26:20.9493052Z         "unit": {
2026-06-07T23:26:20.9493148Z           "complete": true,
2026-06-07T23:26:20.9493238Z           "evidence": [
2026-06-07T23:26:20.9493318Z             {
2026-06-07T23:26:20.9493444Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-07T23:26:20.9493539Z               "line": 313
2026-06-07T23:26:20.9493629Z             },
2026-06-07T23:26:20.9493711Z             {
2026-06-07T23:26:20.9493830Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-07T23:26:20.9493920Z               "line": 345
2026-06-07T23:26:20.9494006Z             },
2026-06-07T23:26:20.9494191Z             {
2026-06-07T23:26:20.9494306Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-07T23:26:20.9494398Z               "line": 366
2026-06-07T23:26:20.9494487Z             },
2026-06-07T23:26:20.9494569Z             {
2026-06-07T23:26:20.9494755Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-07T23:26:20.9494845Z               "line": 253
2026-06-07T23:26:20.9494930Z             },
2026-06-07T23:26:20.9495016Z             {
2026-06-07T23:26:20.9495133Z               "path": "crates/spt-daemon/tests/wanmsg.rs",
2026-06-07T23:26:20.9495227Z               "line": 238
2026-06-07T23:26:20.9495309Z             },
2026-06-07T23:26:20.9495400Z             {
2026-06-07T23:26:20.9495505Z               "path": "crates/spt-daemon/tests/xfer.rs",
2026-06-07T23:26:20.9495590Z               "line": 229
2026-06-07T23:26:20.9495677Z             },
2026-06-07T23:26:20.9495758Z             {
2026-06-07T23:26:20.9495871Z               "path": "crates/spt-store/src/spool.rs",
2026-06-07T23:26:20.9495968Z               "line": 488
2026-06-07T23:26:20.9496053Z             },
2026-06-07T23:26:20.9496143Z             {
2026-06-07T23:26:20.9496258Z               "path": "crates/spt-store/src/spool.rs",
2026-06-07T23:26:20.9496354Z               "line": 518
2026-06-07T23:26:20.9496444Z             }
2026-06-07T23:26:20.9496529Z           ]
2026-06-07T23:26:20.9496612Z         }
2026-06-07T23:26:20.9496702Z       }
2026-06-07T23:26:20.9496787Z     },
2026-06-07T23:26:20.9496873Z     {
2026-06-07T23:26:20.9497082Z       "id": "REQ-HAZARD-SINGLE-PATH-SOURCE",
2026-06-07T23:26:20.9497274Z       "title": "Single path/registry source of truth; no layout ambiguity (6.1)",
2026-06-07T23:26:20.9497373Z       "requiredStages": [
2026-06-07T23:26:20.9497459Z         "impl",
2026-06-07T23:26:20.9497547Z         "unit"
2026-06-07T23:26:20.9497637Z       ],
2026-06-07T23:26:20.9497721Z       "stages": {
2026-06-07T23:26:20.9497816Z         "doc": {
2026-06-07T23:26:20.9497902Z           "complete": false,
2026-06-07T23:26:20.9497993Z           "evidence": []
2026-06-07T23:26:20.9498073Z         },
2026-06-07T23:26:20.9498159Z         "impl": {
2026-06-07T23:26:20.9498256Z           "complete": true,
2026-06-07T23:26:20.9498341Z           "evidence": [
2026-06-07T23:26:20.9498435Z             {
2026-06-07T23:26:20.9498561Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:20.9498652Z               "line": 56
2026-06-07T23:26:20.9498736Z             },
2026-06-07T23:26:20.9498828Z             {
2026-06-07T23:26:20.9498960Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:20.9499046Z               "line": 65
2026-06-07T23:26:20.9499132Z             },
2026-06-07T23:26:20.9499219Z             {
2026-06-07T23:26:20.9499337Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:20.9499428Z               "line": 72
2026-06-07T23:26:20.9499520Z             },
2026-06-07T23:26:20.9499604Z             {
2026-06-07T23:26:20.9499719Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9499810Z               "line": 33
2026-06-07T23:26:20.9499895Z             },
2026-06-07T23:26:20.9499980Z             {
2026-06-07T23:26:20.9500092Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9500192Z               "line": 65
2026-06-07T23:26:20.9500275Z             },
2026-06-07T23:26:20.9500361Z             {
2026-06-07T23:26:20.9500466Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9500560Z               "line": 74
2026-06-07T23:26:20.9500650Z             },
2026-06-07T23:26:20.9500731Z             {
2026-06-07T23:26:20.9500850Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9500940Z               "line": 83
2026-06-07T23:26:20.9501026Z             },
2026-06-07T23:26:20.9501118Z             {
2026-06-07T23:26:20.9501227Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9501322Z               "line": 92
2026-06-07T23:26:20.9501513Z             },
2026-06-07T23:26:20.9501598Z             {
2026-06-07T23:26:20.9501714Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9501804Z               "line": 101
2026-06-07T23:26:20.9501975Z             },
2026-06-07T23:26:20.9502063Z             {
2026-06-07T23:26:20.9502170Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9502261Z               "line": 109
2026-06-07T23:26:20.9502348Z             },
2026-06-07T23:26:20.9502434Z             {
2026-06-07T23:26:20.9502543Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9502634Z               "line": 118
2026-06-07T23:26:20.9502721Z             },
2026-06-07T23:26:20.9502809Z             {
2026-06-07T23:26:20.9502918Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9503009Z               "line": 127
2026-06-07T23:26:20.9503099Z             },
2026-06-07T23:26:20.9503183Z             {
2026-06-07T23:26:20.9503293Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9503389Z               "line": 134
2026-06-07T23:26:20.9503478Z             },
2026-06-07T23:26:20.9503568Z             {
2026-06-07T23:26:20.9503684Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9503784Z               "line": 141
2026-06-07T23:26:20.9503869Z             },
2026-06-07T23:26:20.9503956Z             {
2026-06-07T23:26:20.9504065Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9504165Z               "line": 149
2026-06-07T23:26:20.9504252Z             },
2026-06-07T23:26:20.9504333Z             {
2026-06-07T23:26:20.9504447Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9504537Z               "line": 158
2026-06-07T23:26:20.9504624Z             },
2026-06-07T23:26:20.9504704Z             {
2026-06-07T23:26:20.9504814Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9504910Z               "line": 167
2026-06-07T23:26:20.9505000Z             },
2026-06-07T23:26:20.9505085Z             {
2026-06-07T23:26:20.9505191Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9505282Z               "line": 176
2026-06-07T23:26:20.9505371Z             },
2026-06-07T23:26:20.9505461Z             {
2026-06-07T23:26:20.9505571Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9505660Z               "line": 188
2026-06-07T23:26:20.9505750Z             },
2026-06-07T23:26:20.9505836Z             {
2026-06-07T23:26:20.9505951Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9506036Z               "line": 195
2026-06-07T23:26:20.9506126Z             },
2026-06-07T23:26:20.9506213Z             {
2026-06-07T23:26:20.9506318Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9506412Z               "line": 204
2026-06-07T23:26:20.9506503Z             },
2026-06-07T23:26:20.9506590Z             {
2026-06-07T23:26:20.9506694Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9506794Z               "line": 211
2026-06-07T23:26:20.9506881Z             },
2026-06-07T23:26:20.9507056Z             {
2026-06-07T23:26:20.9507177Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9507271Z               "line": 278
2026-06-07T23:26:20.9507362Z             },
2026-06-07T23:26:20.9507448Z             {
2026-06-07T23:26:20.9507563Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9507657Z               "line": 290
2026-06-07T23:26:20.9507738Z             },
2026-06-07T23:26:20.9507830Z             {
2026-06-07T23:26:20.9507938Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9508029Z               "line": 377
2026-06-07T23:26:20.9508116Z             }
2026-06-07T23:26:20.9508211Z           ]
2026-06-07T23:26:20.9508300Z         },
2026-06-07T23:26:20.9508385Z         "int": {
2026-06-07T23:26:20.9508482Z           "complete": false,
2026-06-07T23:26:20.9508572Z           "evidence": []
2026-06-07T23:26:20.9508763Z         },
2026-06-07T23:26:20.9508849Z         "unit": {
2026-06-07T23:26:20.9508939Z           "complete": true,
2026-06-07T23:26:20.9509034Z           "evidence": [
2026-06-07T23:26:20.9509130Z             {
2026-06-07T23:26:20.9509344Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9509431Z               "line": 459
2026-06-07T23:26:20.9509525Z             },
2026-06-07T23:26:20.9509610Z             {
2026-06-07T23:26:20.9509722Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9509821Z               "line": 500
2026-06-07T23:26:20.9509907Z             },
2026-06-07T23:26:20.9509997Z             {
2026-06-07T23:26:20.9510103Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9510197Z               "line": 513
2026-06-07T23:26:20.9510293Z             },
2026-06-07T23:26:20.9510375Z             {
2026-06-07T23:26:20.9510484Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9510579Z               "line": 599
2026-06-07T23:26:20.9510676Z             }
2026-06-07T23:26:20.9510757Z           ]
2026-06-07T23:26:20.9510845Z         }
2026-06-07T23:26:20.9510935Z       }
2026-06-07T23:26:20.9511017Z     },
2026-06-07T23:26:20.9511111Z     {
2026-06-07T23:26:20.9511219Z       "id": "REQ-HAZARD-SOFT-CLEANUP",
2026-06-07T23:26:20.9511410Z       "title": "Soft-cleanup preserves state, removes only the ready marker (6.2)",
2026-06-07T23:26:20.9511505Z       "requiredStages": [
2026-06-07T23:26:20.9511601Z         "impl",
2026-06-07T23:26:20.9511692Z         "unit"
2026-06-07T23:26:20.9511778Z       ],
2026-06-07T23:26:20.9511872Z       "stages": {
2026-06-07T23:26:20.9511959Z         "doc": {
2026-06-07T23:26:20.9512058Z           "complete": false,
2026-06-07T23:26:20.9512149Z           "evidence": []
2026-06-07T23:26:20.9512235Z         },
2026-06-07T23:26:20.9512327Z         "impl": {
2026-06-07T23:26:20.9512427Z           "complete": true,
2026-06-07T23:26:20.9512526Z           "evidence": [
2026-06-07T23:26:20.9512608Z             {
2026-06-07T23:26:20.9512730Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-07T23:26:20.9512817Z               "line": 143
2026-06-07T23:26:20.9512904Z             },
2026-06-07T23:26:20.9512999Z             {
2026-06-07T23:26:20.9513117Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.9513209Z               "line": 148
2026-06-07T23:26:20.9513290Z             }
2026-06-07T23:26:20.9513378Z           ]
2026-06-07T23:26:20.9513464Z         },
2026-06-07T23:26:20.9513555Z         "int": {
2026-06-07T23:26:20.9513649Z           "complete": false,
2026-06-07T23:26:20.9513739Z           "evidence": []
2026-06-07T23:26:20.9513828Z         },
2026-06-07T23:26:20.9513916Z         "unit": {
2026-06-07T23:26:20.9514015Z           "complete": true,
2026-06-07T23:26:20.9514106Z           "evidence": [
2026-06-07T23:26:20.9514196Z             {
2026-06-07T23:26:20.9514316Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-07T23:26:20.9514410Z               "line": 264
2026-06-07T23:26:20.9514502Z             },
2026-06-07T23:26:20.9514587Z             {
2026-06-07T23:26:20.9514706Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.9514802Z               "line": 544
2026-06-07T23:26:20.9514893Z             },
2026-06-07T23:26:20.9514983Z             {
2026-06-07T23:26:20.9515097Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.9515194Z               "line": 557
2026-06-07T23:26:20.9515279Z             }
2026-06-07T23:26:20.9515364Z           ]
2026-06-07T23:26:20.9515451Z         }
2026-06-07T23:26:20.9515537Z       }
2026-06-07T23:26:20.9515626Z     },
2026-06-07T23:26:20.9515713Z     {
2026-06-07T23:26:20.9515829Z       "id": "REQ-HAZARD-STALE-INDEX-LOCK",
2026-06-07T23:26:20.9515965Z       "title": "Sweep stale lockfiles on daemon boot (1.3)",
2026-06-07T23:26:20.9516069Z       "requiredStages": [
2026-06-07T23:26:20.9516160Z         "impl",
2026-06-07T23:26:20.9516605Z         "unit"
2026-06-07T23:26:20.9516696Z       ],
2026-06-07T23:26:20.9516783Z       "stages": {
2026-06-07T23:26:20.9516897Z         "doc": {
2026-06-07T23:26:20.9517102Z           "complete": false,
2026-06-07T23:26:20.9517311Z           "evidence": []
2026-06-07T23:26:20.9517398Z         },
2026-06-07T23:26:20.9517488Z         "impl": {
2026-06-07T23:26:20.9517574Z           "complete": true,
2026-06-07T23:26:20.9517664Z           "evidence": [
2026-06-07T23:26:20.9517746Z             {
2026-06-07T23:26:20.9517907Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-07T23:26:20.9517994Z               "line": 114
2026-06-07T23:26:20.9518080Z             },
2026-06-07T23:26:20.9518160Z             {
2026-06-07T23:26:20.9518284Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:20.9518376Z               "line": 481
2026-06-07T23:26:20.9518489Z             }
2026-06-07T23:26:20.9518575Z           ]
2026-06-07T23:26:20.9518662Z         },
2026-06-07T23:26:20.9518747Z         "int": {
2026-06-07T23:26:20.9518846Z           "complete": false,
2026-06-07T23:26:20.9518941Z           "evidence": []
2026-06-07T23:26:20.9519027Z         },
2026-06-07T23:26:20.9519123Z         "unit": {
2026-06-07T23:26:20.9519217Z           "complete": true,
2026-06-07T23:26:20.9519313Z           "evidence": [
2026-06-07T23:26:20.9519400Z             {
2026-06-07T23:26:20.9519532Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:20.9519633Z               "line": 515
2026-06-07T23:26:20.9519714Z             }
2026-06-07T23:26:20.9519800Z           ]
2026-06-07T23:26:20.9519885Z         }
2026-06-07T23:26:20.9519967Z       }
2026-06-07T23:26:20.9520052Z     },
2026-06-07T23:26:20.9520147Z     {
2026-06-07T23:26:20.9520262Z       "id": "REQ-HAZARD-STALE-SIGNOFF-SENTINEL",
2026-06-07T23:26:20.9520428Z       "title": "Stale signoff sentinel does not kill a fresh start (3.2)",
2026-06-07T23:26:20.9520534Z       "requiredStages": [
2026-06-07T23:26:20.9520625Z         "impl",
2026-06-07T23:26:20.9520715Z         "unit"
2026-06-07T23:26:20.9520801Z       ],
2026-06-07T23:26:20.9520897Z       "stages": {
2026-06-07T23:26:20.9520983Z         "doc": {
2026-06-07T23:26:20.9521076Z           "complete": false,
2026-06-07T23:26:20.9521178Z           "evidence": []
2026-06-07T23:26:20.9521264Z         },
2026-06-07T23:26:20.9521358Z         "impl": {
2026-06-07T23:26:20.9521448Z           "complete": true,
2026-06-07T23:26:20.9521544Z           "evidence": [
2026-06-07T23:26:20.9521634Z             {
2026-06-07T23:26:20.9521755Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9521851Z               "line": 459
2026-06-07T23:26:20.9521942Z             },
2026-06-07T23:26:20.9522024Z             {
2026-06-07T23:26:20.9522142Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-07T23:26:20.9522229Z               "line": 28
2026-06-07T23:26:20.9522324Z             }
2026-06-07T23:26:20.9522408Z           ]
2026-06-07T23:26:20.9522505Z         },
2026-06-07T23:26:20.9522591Z         "int": {
2026-06-07T23:26:20.9522686Z           "complete": false,
2026-06-07T23:26:20.9522776Z           "evidence": []
2026-06-07T23:26:20.9522868Z         },
2026-06-07T23:26:20.9522957Z         "unit": {
2026-06-07T23:26:20.9523047Z           "complete": true,
2026-06-07T23:26:20.9523144Z           "evidence": [
2026-06-07T23:26:20.9523230Z             {
2026-06-07T23:26:20.9523353Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-07T23:26:20.9523449Z               "line": 229
2026-06-07T23:26:20.9523540Z             }
2026-06-07T23:26:20.9523629Z           ]
2026-06-07T23:26:20.9523711Z         }
2026-06-07T23:26:20.9523812Z       }
2026-06-07T23:26:20.9523897Z     },
2026-06-07T23:26:20.9523986Z     {
2026-06-07T23:26:20.9524096Z       "id": "REQ-HAZARD-STDIN-SESSION-ID",
2026-06-07T23:26:20.9524228Z       "title": "Stdin session_id precedence over env (2.2)",
2026-06-07T23:26:20.9524327Z       "requiredStages": [],
2026-06-07T23:26:20.9524528Z       "stages": {
2026-06-07T23:26:20.9524618Z         "doc": {
2026-06-07T23:26:20.9524713Z           "complete": false,
2026-06-07T23:26:20.9524810Z           "evidence": []
2026-06-07T23:26:20.9524891Z         },
2026-06-07T23:26:20.9525081Z         "impl": {
2026-06-07T23:26:20.9525176Z           "complete": false,
2026-06-07T23:26:20.9525261Z           "evidence": []
2026-06-07T23:26:20.9525347Z         },
2026-06-07T23:26:20.9525435Z         "int": {
2026-06-07T23:26:20.9525529Z           "complete": false,
2026-06-07T23:26:20.9525624Z           "evidence": []
2026-06-07T23:26:20.9525716Z         },
2026-06-07T23:26:20.9525810Z         "unit": {
2026-06-07T23:26:20.9525900Z           "complete": false,
2026-06-07T23:26:20.9525996Z           "evidence": []
2026-06-07T23:26:20.9526083Z         }
2026-06-07T23:26:20.9526172Z       }
2026-06-07T23:26:20.9526258Z     },
2026-06-07T23:26:20.9526345Z     {
2026-06-07T23:26:20.9526454Z       "id": "REQ-HAZARD-SUBPROCESS-TIMEOUT",
2026-06-07T23:26:20.9526610Z       "title": "Every harness/git subprocess has a timeout (5.3)",
2026-06-07T23:26:20.9526711Z       "requiredStages": [
2026-06-07T23:26:20.9526794Z         "impl",
2026-06-07T23:26:20.9526889Z         "unit"
2026-06-07T23:26:20.9527052Z       ],
2026-06-07T23:26:20.9527142Z       "stages": {
2026-06-07T23:26:20.9527232Z         "doc": {
2026-06-07T23:26:20.9527323Z           "complete": false,
2026-06-07T23:26:20.9527424Z           "evidence": []
2026-06-07T23:26:20.9527518Z         },
2026-06-07T23:26:20.9527609Z         "impl": {
2026-06-07T23:26:20.9527700Z           "complete": true,
2026-06-07T23:26:20.9527795Z           "evidence": [
2026-06-07T23:26:20.9527880Z             {
2026-06-07T23:26:20.9528001Z               "path": "crates/spt-live/src/turn.rs",
2026-06-07T23:26:20.9528096Z               "line": 19
2026-06-07T23:26:20.9528181Z             },
2026-06-07T23:26:20.9528273Z             {
2026-06-07T23:26:20.9528396Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-07T23:26:20.9528491Z               "line": 347
2026-06-07T23:26:20.9528578Z             },
2026-06-07T23:26:20.9528668Z             {
2026-06-07T23:26:20.9528787Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-07T23:26:20.9528883Z               "line": 383
2026-06-07T23:26:20.9528974Z             },
2026-06-07T23:26:20.9529058Z             {
2026-06-07T23:26:20.9529178Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-07T23:26:20.9529261Z               "line": 15
2026-06-07T23:26:20.9529336Z             },
2026-06-07T23:26:20.9529420Z             {
2026-06-07T23:26:20.9529534Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-07T23:26:20.9529626Z               "line": 48
2026-06-07T23:26:20.9529711Z             },
2026-06-07T23:26:20.9529801Z             {
2026-06-07T23:26:20.9529912Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-07T23:26:20.9530003Z               "line": 119
2026-06-07T23:26:20.9530092Z             },
2026-06-07T23:26:20.9530183Z             {
2026-06-07T23:26:20.9530289Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9530378Z               "line": 2428
2026-06-07T23:26:20.9530474Z             }
2026-06-07T23:26:20.9530565Z           ]
2026-06-07T23:26:20.9530655Z         },
2026-06-07T23:26:20.9530750Z         "int": {
2026-06-07T23:26:20.9530847Z           "complete": false,
2026-06-07T23:26:20.9530946Z           "evidence": []
2026-06-07T23:26:20.9531032Z         },
2026-06-07T23:26:20.9531118Z         "unit": {
2026-06-07T23:26:20.9531214Z           "complete": true,
2026-06-07T23:26:20.9531303Z           "evidence": [
2026-06-07T23:26:20.9531394Z             {
2026-06-07T23:26:20.9531509Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-07T23:26:20.9531609Z               "line": 496
2026-06-07T23:26:20.9531690Z             },
2026-06-07T23:26:20.9531777Z             {
2026-06-07T23:26:20.9531900Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-07T23:26:20.9531989Z               "line": 165
2026-06-07T23:26:20.9532180Z             },
2026-06-07T23:26:20.9532264Z             {
2026-06-07T23:26:20.9532382Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-07T23:26:20.9532474Z               "line": 175
2026-06-07T23:26:20.9532654Z             }
2026-06-07T23:26:20.9532745Z           ]
2026-06-07T23:26:20.9532832Z         }
2026-06-07T23:26:20.9534973Z       }
2026-06-07T23:26:20.9535079Z     },
2026-06-07T23:26:20.9535168Z     {
2026-06-07T23:26:20.9535288Z       "id": "REQ-HAZARD-SUDO-SECURE-PATH",
2026-06-07T23:26:20.9536184Z       "title": "Elevation guidance on Unix names the binary's ABSOLUTE path under sudo (a user-local install ~/.local/bin · ~/.cargo/bin is not on sudo's secure_path, so bare `sudo spt` dies 'command not found'); gated commands auto-elevate on an interactive TTY, else print the runnable hint (5.10)",
2026-06-07T23:26:20.9536290Z       "requiredStages": [
2026-06-07T23:26:20.9536380Z         "impl",
2026-06-07T23:26:20.9536465Z         "unit"
2026-06-07T23:26:20.9536566Z       ],
2026-06-07T23:26:20.9536653Z       "stages": {
2026-06-07T23:26:20.9536742Z         "doc": {
2026-06-07T23:26:20.9536833Z           "complete": false,
2026-06-07T23:26:20.9536934Z           "evidence": []
2026-06-07T23:26:20.9537137Z         },
2026-06-07T23:26:20.9537227Z         "impl": {
2026-06-07T23:26:20.9537322Z           "complete": true,
2026-06-07T23:26:20.9537411Z           "evidence": [
2026-06-07T23:26:20.9537496Z             {
2026-06-07T23:26:20.9537607Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9537697Z               "line": 2186
2026-06-07T23:26:20.9537783Z             },
2026-06-07T23:26:20.9537869Z             {
2026-06-07T23:26:20.9537979Z               "path": "crates/spt/src/elevation.rs",
2026-06-07T23:26:20.9538074Z               "line": 103
2026-06-07T23:26:20.9538165Z             },
2026-06-07T23:26:20.9538246Z             {
2026-06-07T23:26:20.9538365Z               "path": "crates/spt/src/elevation.rs",
2026-06-07T23:26:20.9538460Z               "line": 135
2026-06-07T23:26:20.9538547Z             }
2026-06-07T23:26:20.9538632Z           ]
2026-06-07T23:26:20.9538712Z         },
2026-06-07T23:26:20.9538804Z         "int": {
2026-06-07T23:26:20.9538895Z           "complete": false,
2026-06-07T23:26:20.9538994Z           "evidence": []
2026-06-07T23:26:20.9539075Z         },
2026-06-07T23:26:20.9539162Z         "unit": {
2026-06-07T23:26:20.9539252Z           "complete": true,
2026-06-07T23:26:20.9539347Z           "evidence": [
2026-06-07T23:26:20.9539433Z             {
2026-06-07T23:26:20.9539538Z               "path": "crates/spt/src/elevation.rs",
2026-06-07T23:26:20.9539637Z               "line": 258
2026-06-07T23:26:20.9539719Z             },
2026-06-07T23:26:20.9539806Z             {
2026-06-07T23:26:20.9539909Z               "path": "crates/spt/src/elevation.rs",
2026-06-07T23:26:20.9540004Z               "line": 283
2026-06-07T23:26:20.9540090Z             },
2026-06-07T23:26:20.9540172Z             {
2026-06-07T23:26:20.9540286Z               "path": "crates/spt/src/elevation.rs",
2026-06-07T23:26:20.9540365Z               "line": 296
2026-06-07T23:26:20.9540458Z             },
2026-06-07T23:26:20.9540539Z             {
2026-06-07T23:26:20.9540643Z               "path": "crates/spt/src/elevation.rs",
2026-06-07T23:26:20.9540743Z               "line": 308
2026-06-07T23:26:20.9540820Z             }
2026-06-07T23:26:20.9540906Z           ]
2026-06-07T23:26:20.9540990Z         }
2026-06-07T23:26:20.9541073Z       }
2026-06-07T23:26:20.9541158Z     },
2026-06-07T23:26:20.9541239Z     {
2026-06-07T23:26:20.9541354Z       "id": "REQ-HAZARD-UNC-PATH-STRIP",
2026-06-07T23:26:20.9541506Z       "title": "Strip Windows UNC prefix on serialized paths (5.4)",
2026-06-07T23:26:20.9541606Z       "requiredStages": [
2026-06-07T23:26:20.9541692Z         "impl",
2026-06-07T23:26:20.9541778Z         "unit"
2026-06-07T23:26:20.9541864Z       ],
2026-06-07T23:26:20.9541959Z       "stages": {
2026-06-07T23:26:20.9542046Z         "doc": {
2026-06-07T23:26:20.9542288Z           "complete": false,
2026-06-07T23:26:20.9542380Z           "evidence": []
2026-06-07T23:26:20.9542465Z         },
2026-06-07T23:26:20.9542554Z         "impl": {
2026-06-07T23:26:20.9542644Z           "complete": true,
2026-06-07T23:26:20.9542852Z           "evidence": [
2026-06-07T23:26:20.9542937Z             {
2026-06-07T23:26:20.9543058Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-07T23:26:20.9543153Z               "line": 35
2026-06-07T23:26:20.9543237Z             }
2026-06-07T23:26:20.9543325Z           ]
2026-06-07T23:26:20.9543411Z         },
2026-06-07T23:26:20.9543496Z         "int": {
2026-06-07T23:26:20.9543591Z           "complete": false,
2026-06-07T23:26:20.9543683Z           "evidence": []
2026-06-07T23:26:20.9543772Z         },
2026-06-07T23:26:20.9543858Z         "unit": {
2026-06-07T23:26:20.9543955Z           "complete": true,
2026-06-07T23:26:20.9544045Z           "evidence": [
2026-06-07T23:26:20.9544125Z             {
2026-06-07T23:26:20.9544249Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-07T23:26:20.9544341Z               "line": 220
2026-06-07T23:26:20.9544425Z             }
2026-06-07T23:26:20.9544506Z           ]
2026-06-07T23:26:20.9544594Z         }
2026-06-07T23:26:20.9544684Z       }
2026-06-07T23:26:20.9544769Z     },
2026-06-07T23:26:20.9544860Z     {
2026-06-07T23:26:20.9544966Z       "id": "REQ-HAZARD-UPDATE-ROLLBACK",
2026-06-07T23:26:20.9545226Z       "title": "Self-update rejects version rollback; metadata expiry + adapter content signing (codex #5)",
2026-06-07T23:26:20.9545330Z       "requiredStages": [
2026-06-07T23:26:20.9545419Z         "impl",
2026-06-07T23:26:20.9545504Z         "unit"
2026-06-07T23:26:20.9545596Z       ],
2026-06-07T23:26:20.9545682Z       "stages": {
2026-06-07T23:26:20.9545766Z         "doc": {
2026-06-07T23:26:20.9545858Z           "complete": false,
2026-06-07T23:26:20.9545949Z           "evidence": []
2026-06-07T23:26:20.9546034Z         },
2026-06-07T23:26:20.9546124Z         "impl": {
2026-06-07T23:26:20.9546226Z           "complete": true,
2026-06-07T23:26:20.9546315Z           "evidence": [
2026-06-07T23:26:20.9546400Z             {
2026-06-07T23:26:20.9546720Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-07T23:26:20.9546826Z               "line": 397
2026-06-07T23:26:20.9546912Z             },
2026-06-07T23:26:20.9547068Z             {
2026-06-07T23:26:20.9547203Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:20.9547297Z               "line": 396
2026-06-07T23:26:20.9547378Z             },
2026-06-07T23:26:20.9547461Z             {
2026-06-07T23:26:20.9547602Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-07T23:26:20.9547688Z               "line": 156
2026-06-07T23:26:20.9547763Z             }
2026-06-07T23:26:20.9547850Z           ]
2026-06-07T23:26:20.9547938Z         },
2026-06-07T23:26:20.9548024Z         "int": {
2026-06-07T23:26:20.9548114Z           "complete": false,
2026-06-07T23:26:20.9548211Z           "evidence": []
2026-06-07T23:26:20.9548300Z         },
2026-06-07T23:26:20.9548385Z         "unit": {
2026-06-07T23:26:20.9548478Z           "complete": true,
2026-06-07T23:26:20.9548568Z           "evidence": [
2026-06-07T23:26:20.9548652Z             {
2026-06-07T23:26:20.9548778Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:20.9548868Z               "line": 797
2026-06-07T23:26:20.9548953Z             },
2026-06-07T23:26:20.9549034Z             {
2026-06-07T23:26:20.9549154Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:20.9549244Z               "line": 811
2026-06-07T23:26:20.9549330Z             },
2026-06-07T23:26:20.9549417Z             {
2026-06-07T23:26:20.9549526Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:20.9549621Z               "line": 830
2026-06-07T23:26:20.9549712Z             },
2026-06-07T23:26:20.9549798Z             {
2026-06-07T23:26:20.9549912Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:20.9550113Z               "line": 847
2026-06-07T23:26:20.9550197Z             },
2026-06-07T23:26:20.9550284Z             {
2026-06-07T23:26:20.9550414Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-07T23:26:20.9550587Z               "line": 430
2026-06-07T23:26:20.9550679Z             }
2026-06-07T23:26:20.9550751Z           ]
2026-06-07T23:26:20.9550836Z         }
2026-06-07T23:26:20.9550926Z       }
2026-06-07T23:26:20.9551008Z     },
2026-06-07T23:26:20.9551094Z     {
2026-06-07T23:26:20.9551203Z       "id": "REQ-HAZARD-WAN-ORIGIN-AUTH",
2026-06-07T23:26:20.9551982Z       "title": "WAN-inbound origin is transport truth, never payload: the access gate's subject (ADR-0009 origin-node whitelist) is the QUIC handshake-proven remote node id from the broker's conn/stream table — a forged origin/node field inside record bytes is inert (7.5)",
2026-06-07T23:26:20.9552085Z       "requiredStages": [
2026-06-07T23:26:20.9552171Z         "doc",
2026-06-07T23:26:20.9552262Z         "impl",
2026-06-07T23:26:20.9552348Z         "unit"
2026-06-07T23:26:20.9552433Z       ],
2026-06-07T23:26:20.9552519Z       "stages": {
2026-06-07T23:26:20.9552606Z         "doc": {
2026-06-07T23:26:20.9552701Z           "complete": true,
2026-06-07T23:26:20.9552795Z           "evidence": [
2026-06-07T23:26:20.9552892Z             {
2026-06-07T23:26:20.9553002Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-07T23:26:20.9553091Z               "line": 311
2026-06-07T23:26:20.9553181Z             }
2026-06-07T23:26:20.9553262Z           ]
2026-06-07T23:26:20.9553356Z         },
2026-06-07T23:26:20.9553436Z         "impl": {
2026-06-07T23:26:20.9553531Z           "complete": true,
2026-06-07T23:26:20.9553618Z           "evidence": [
2026-06-07T23:26:20.9553708Z             {
2026-06-07T23:26:20.9553827Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-07T23:26:20.9553918Z               "line": 85
2026-06-07T23:26:20.9554009Z             },
2026-06-07T23:26:20.9554098Z             {
2026-06-07T23:26:20.9554214Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-07T23:26:20.9554299Z               "line": 99
2026-06-07T23:26:20.9554394Z             },
2026-06-07T23:26:20.9554485Z             {
2026-06-07T23:26:20.9554605Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-07T23:26:20.9554695Z               "line": 55
2026-06-07T23:26:20.9554781Z             },
2026-06-07T23:26:20.9554867Z             {
2026-06-07T23:26:20.9554981Z               "path": "crates/spt-daemon/src/linkhost.rs",
2026-06-07T23:26:20.9555081Z               "line": 31
2026-06-07T23:26:20.9555164Z             },
2026-06-07T23:26:20.9555248Z             {
2026-06-07T23:26:20.9555358Z               "path": "crates/spt-daemon/src/linkhost.rs",
2026-06-07T23:26:20.9555444Z               "line": 187
2026-06-07T23:26:20.9555531Z             },
2026-06-07T23:26:20.9555619Z             {
2026-06-07T23:26:20.9555776Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-07T23:26:20.9555862Z               "line": 92
2026-06-07T23:26:20.9555936Z             },
2026-06-07T23:26:20.9556021Z             {
2026-06-07T23:26:20.9556141Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-07T23:26:20.9556237Z               "line": 29
2026-06-07T23:26:20.9556317Z             },
2026-06-07T23:26:20.9556408Z             {
2026-06-07T23:26:20.9556514Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-07T23:26:20.9556599Z               "line": 104
2026-06-07T23:26:20.9556704Z             },
2026-06-07T23:26:20.9556786Z             {
2026-06-07T23:26:20.9556914Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9557110Z               "line": 186
2026-06-07T23:26:20.9557195Z             },
2026-06-07T23:26:20.9557299Z             {
2026-06-07T23:26:20.9557425Z               "path": "crates/spt-daemon/src/resthost.rs",
2026-06-07T23:26:20.9557523Z               "line": 28
2026-06-07T23:26:20.9557605Z             },
2026-06-07T23:26:20.9557797Z             {
2026-06-07T23:26:20.9557910Z               "path": "crates/spt-daemon/src/resthost.rs",
2026-06-07T23:26:20.9558001Z               "line": 74
2026-06-07T23:26:20.9558088Z             },
2026-06-07T23:26:20.9558257Z             {
2026-06-07T23:26:20.9558371Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-07T23:26:20.9558461Z               "line": 40
2026-06-07T23:26:20.9558550Z             },
2026-06-07T23:26:20.9558636Z             {
2026-06-07T23:26:20.9558746Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-07T23:26:20.9558837Z               "line": 181
2026-06-07T23:26:20.9558917Z             },
2026-06-07T23:26:20.9559003Z             {
2026-06-07T23:26:20.9559114Z               "path": "crates/spt-daemon/src/wan.rs",
2026-06-07T23:26:20.9559208Z               "line": 70
2026-06-07T23:26:20.9559295Z             },
2026-06-07T23:26:20.9559381Z             {
2026-06-07T23:26:20.9559490Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-07T23:26:20.9559585Z               "line": 223
2026-06-07T23:26:20.9559672Z             },
2026-06-07T23:26:20.9559761Z             {
2026-06-07T23:26:20.9559866Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-07T23:26:20.9559967Z               "line": 37
2026-06-07T23:26:20.9560048Z             },
2026-06-07T23:26:20.9560133Z             {
2026-06-07T23:26:20.9560249Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-07T23:26:20.9560349Z               "line": 38
2026-06-07T23:26:20.9560433Z             },
2026-06-07T23:26:20.9560525Z             {
2026-06-07T23:26:20.9560645Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-07T23:26:20.9560734Z               "line": 36
2026-06-07T23:26:20.9560820Z             },
2026-06-07T23:26:20.9560902Z             {
2026-06-07T23:26:20.9561016Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-07T23:26:20.9561105Z               "line": 40
2026-06-07T23:26:20.9561190Z             }
2026-06-07T23:26:20.9561287Z           ]
2026-06-07T23:26:20.9561368Z         },
2026-06-07T23:26:20.9561458Z         "int": {
2026-06-07T23:26:20.9561548Z           "complete": false,
2026-06-07T23:26:20.9561644Z           "evidence": []
2026-06-07T23:26:20.9561734Z         },
2026-06-07T23:26:20.9561820Z         "unit": {
2026-06-07T23:26:20.9561917Z           "complete": true,
2026-06-07T23:26:20.9562002Z           "evidence": [
2026-06-07T23:26:20.9562087Z             {
2026-06-07T23:26:20.9562208Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-07T23:26:20.9562302Z               "line": 195
2026-06-07T23:26:20.9562383Z             },
2026-06-07T23:26:20.9562469Z             {
2026-06-07T23:26:20.9562598Z               "path": "crates/spt-daemon/tests/notifsync.rs",
2026-06-07T23:26:20.9562688Z               "line": 122
2026-06-07T23:26:20.9562779Z             },
2026-06-07T23:26:20.9562861Z             {
2026-06-07T23:26:20.9562984Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-07T23:26:20.9563079Z               "line": 674
2026-06-07T23:26:20.9563166Z             },
2026-06-07T23:26:20.9563251Z             {
2026-06-07T23:26:20.9563365Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-07T23:26:20.9563467Z               "line": 215
2026-06-07T23:26:20.9563552Z             },
2026-06-07T23:26:20.9563641Z             {
2026-06-07T23:26:20.9563755Z               "path": "crates/spt-daemon/tests/wanmsg.rs",
2026-06-07T23:26:20.9563850Z               "line": 156
2026-06-07T23:26:20.9563935Z             },
2026-06-07T23:26:20.9564019Z             {
2026-06-07T23:26:20.9564130Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-07T23:26:20.9564216Z               "line": 112
2026-06-07T23:26:20.9564306Z             },
2026-06-07T23:26:20.9564392Z             {
2026-06-07T23:26:20.9564502Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-07T23:26:20.9564592Z               "line": 157
2026-06-07T23:26:20.9564677Z             },
2026-06-07T23:26:20.9564836Z             {
2026-06-07T23:26:20.9564950Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-07T23:26:20.9565041Z               "line": 215
2026-06-07T23:26:20.9565127Z             },
2026-06-07T23:26:20.9565208Z             {
2026-06-07T23:26:20.9565384Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-07T23:26:20.9565465Z               "line": 140
2026-06-07T23:26:20.9565546Z             },
2026-06-07T23:26:20.9565622Z             {
2026-06-07T23:26:20.9565738Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-07T23:26:20.9565822Z               "line": 162
2026-06-07T23:26:20.9565894Z             }
2026-06-07T23:26:20.9565980Z           ]
2026-06-07T23:26:20.9566062Z         }
2026-06-07T23:26:20.9566142Z       }
2026-06-07T23:26:20.9566217Z     },
2026-06-07T23:26:20.9566326Z     {
2026-06-07T23:26:20.9566455Z       "id": "REQ-HAZARD-WINDOWS-PID-RECYCLE",
2026-06-07T23:26:20.9566610Z       "title": "Windows PID-recycling false positives guarded (5.1)",
2026-06-07T23:26:20.9566711Z       "requiredStages": [
2026-06-07T23:26:20.9566797Z         "impl",
2026-06-07T23:26:20.9566891Z         "unit"
2026-06-07T23:26:20.9567059Z       ],
2026-06-07T23:26:20.9567145Z       "stages": {
2026-06-07T23:26:20.9567235Z         "doc": {
2026-06-07T23:26:20.9567322Z           "complete": false,
2026-06-07T23:26:20.9567431Z           "evidence": []
2026-06-07T23:26:20.9567530Z         },
2026-06-07T23:26:20.9567632Z         "impl": {
2026-06-07T23:26:20.9567722Z           "complete": true,
2026-06-07T23:26:20.9567812Z           "evidence": [
2026-06-07T23:26:20.9567898Z             {
2026-06-07T23:26:20.9568013Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-07T23:26:20.9568102Z               "line": 95
2026-06-07T23:26:20.9568188Z             },
2026-06-07T23:26:20.9568276Z             {
2026-06-07T23:26:20.9568385Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:20.9568484Z               "line": 102
2026-06-07T23:26:20.9568576Z             }
2026-06-07T23:26:20.9568657Z           ]
2026-06-07T23:26:20.9568755Z         },
2026-06-07T23:26:20.9568841Z         "int": {
2026-06-07T23:26:20.9568941Z           "complete": false,
2026-06-07T23:26:20.9569031Z           "evidence": []
2026-06-07T23:26:20.9569124Z         },
2026-06-07T23:26:20.9569220Z         "unit": {
2026-06-07T23:26:20.9569316Z           "complete": true,
2026-06-07T23:26:20.9569411Z           "evidence": [
2026-06-07T23:26:20.9569497Z             {
2026-06-07T23:26:20.9569612Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-07T23:26:20.9569703Z               "line": 250
2026-06-07T23:26:20.9569792Z             },
2026-06-07T23:26:20.9569879Z             {
2026-06-07T23:26:20.9569992Z               "path": "crates/spt-store/src/proc.rs",
2026-06-07T23:26:20.9570087Z               "line": 198
2026-06-07T23:26:20.9570179Z             },
2026-06-07T23:26:20.9570265Z             {
2026-06-07T23:26:20.9570370Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:20.9570469Z               "line": 442
2026-06-07T23:26:20.9570557Z             },
2026-06-07T23:26:20.9570641Z             {
2026-06-07T23:26:20.9570751Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:20.9570847Z               "line": 475
2026-06-07T23:26:20.9570928Z             }
2026-06-07T23:26:20.9571018Z           ]
2026-06-07T23:26:20.9571104Z         }
2026-06-07T23:26:20.9571191Z       }
2026-06-07T23:26:20.9571280Z     },
2026-06-07T23:26:20.9571365Z     {
2026-06-07T23:26:20.9571477Z       "id": "REQ-HAZARD-WORKER-PATH",
2026-06-07T23:26:20.9571651Z       "title": "Single source of truth for Worker/Psyche perch location (1.5)",
2026-06-07T23:26:20.9571746Z       "requiredStages": [
2026-06-07T23:26:20.9571838Z         "impl",
2026-06-07T23:26:20.9571924Z         "unit"
2026-06-07T23:26:20.9572008Z       ],
2026-06-07T23:26:20.9572095Z       "stages": {
2026-06-07T23:26:20.9572181Z         "doc": {
2026-06-07T23:26:20.9572276Z           "complete": false,
2026-06-07T23:26:20.9572486Z           "evidence": []
2026-06-07T23:26:20.9572577Z         },
2026-06-07T23:26:20.9572671Z         "impl": {
2026-06-07T23:26:20.9572763Z           "complete": true,
2026-06-07T23:26:20.9572852Z           "evidence": [
2026-06-07T23:26:20.9573019Z             {
2026-06-07T23:26:20.9573144Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9573234Z               "line": 234
2026-06-07T23:26:20.9573320Z             },
2026-06-07T23:26:20.9573407Z             {
2026-06-07T23:26:20.9573520Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9573611Z               "line": 279
2026-06-07T23:26:20.9573693Z             },
2026-06-07T23:26:20.9573783Z             {
2026-06-07T23:26:20.9573896Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9573993Z               "line": 291
2026-06-07T23:26:20.9574084Z             }
2026-06-07T23:26:20.9574168Z           ]
2026-06-07T23:26:20.9574258Z         },
2026-06-07T23:26:20.9574353Z         "int": {
2026-06-07T23:26:20.9574448Z           "complete": false,
2026-06-07T23:26:20.9574537Z           "evidence": []
2026-06-07T23:26:20.9574622Z         },
2026-06-07T23:26:20.9574710Z         "unit": {
2026-06-07T23:26:20.9574810Z           "complete": true,
2026-06-07T23:26:20.9574899Z           "evidence": [
2026-06-07T23:26:20.9574980Z             {
2026-06-07T23:26:20.9575096Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9575185Z               "line": 427
2026-06-07T23:26:20.9575276Z             },
2026-06-07T23:26:20.9575358Z             {
2026-06-07T23:26:20.9575472Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:20.9575562Z               "line": 471
2026-06-07T23:26:20.9575649Z             }
2026-06-07T23:26:20.9575734Z           ]
2026-06-07T23:26:20.9575815Z         }
2026-06-07T23:26:20.9575906Z       }
2026-06-07T23:26:20.9575993Z     },
2026-06-07T23:26:20.9576073Z     {
2026-06-07T23:26:20.9576178Z       "id": "REQ-INFRA-1",
2026-06-07T23:26:20.9576354Z       "title": "GitHub issue tracking for v1; tangled.org as migration target",
2026-06-07T23:26:20.9576454Z       "requiredStages": [],
2026-06-07T23:26:20.9576545Z       "stages": {
2026-06-07T23:26:20.9576636Z         "doc": {
2026-06-07T23:26:20.9576739Z           "complete": false,
2026-06-07T23:26:20.9576834Z           "evidence": []
2026-06-07T23:26:20.9576921Z         },
2026-06-07T23:26:20.9577095Z         "impl": {
2026-06-07T23:26:20.9577199Z           "complete": false,
2026-06-07T23:26:20.9577291Z           "evidence": []
2026-06-07T23:26:20.9577381Z         },
2026-06-07T23:26:20.9577466Z         "int": {
2026-06-07T23:26:20.9577562Z           "complete": false,
2026-06-07T23:26:20.9577653Z           "evidence": []
2026-06-07T23:26:20.9577738Z         },
2026-06-07T23:26:20.9577829Z         "unit": {
2026-06-07T23:26:20.9577920Z           "complete": false,
2026-06-07T23:26:20.9578015Z           "evidence": []
2026-06-07T23:26:20.9578100Z         }
2026-06-07T23:26:20.9578192Z       }
2026-06-07T23:26:20.9578277Z     },
2026-06-07T23:26:20.9578358Z     {
2026-06-07T23:26:20.9578458Z       "id": "REQ-INST-1",
2026-06-07T23:26:20.9578611Z       "title": "endpoint ID vs instance split (adapter-agnostic ID)",
2026-06-07T23:26:20.9578716Z       "requiredStages": [],
2026-06-07T23:26:20.9578806Z       "stages": {
2026-06-07T23:26:20.9578888Z         "doc": {
2026-06-07T23:26:20.9578982Z           "complete": false,
2026-06-07T23:26:20.9579073Z           "evidence": []
2026-06-07T23:26:20.9579156Z         },
2026-06-07T23:26:20.9579241Z         "impl": {
2026-06-07T23:26:20.9579334Z           "complete": false,
2026-06-07T23:26:20.9579425Z           "evidence": []
2026-06-07T23:26:20.9579511Z         },
2026-06-07T23:26:20.9579600Z         "int": {
2026-06-07T23:26:20.9579689Z           "complete": false,
2026-06-07T23:26:20.9579795Z           "evidence": []
2026-06-07T23:26:20.9579881Z         },
2026-06-07T23:26:20.9579971Z         "unit": {
2026-06-07T23:26:20.9580172Z           "complete": false,
2026-06-07T23:26:20.9580267Z           "evidence": []
2026-06-07T23:26:20.9580357Z         }
2026-06-07T23:26:20.9580439Z       }
2026-06-07T23:26:20.9580525Z     },
2026-06-07T23:26:20.9580606Z     {
2026-06-07T23:26:20.9580797Z       "id": "REQ-INST-10",
2026-06-07T23:26:20.9581006Z       "title": "Qualified addressing [subnet:]id[@node] + ambiguity forces qualification",
2026-06-07T23:26:20.9581102Z       "requiredStages": [
2026-06-07T23:26:20.9581192Z         "impl",
2026-06-07T23:26:20.9581282Z         "unit"
2026-06-07T23:26:20.9581369Z       ],
2026-06-07T23:26:20.9581455Z       "stages": {
2026-06-07T23:26:20.9581544Z         "doc": {
2026-06-07T23:26:20.9581640Z           "complete": false,
2026-06-07T23:26:20.9581727Z           "evidence": []
2026-06-07T23:26:20.9581812Z         },
2026-06-07T23:26:20.9581901Z         "impl": {
2026-06-07T23:26:20.9582003Z           "complete": true,
2026-06-07T23:26:20.9582090Z           "evidence": [
2026-06-07T23:26:20.9582183Z             {
2026-06-07T23:26:20.9582310Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9582403Z               "line": 527
2026-06-07T23:26:20.9582489Z             },
2026-06-07T23:26:20.9582583Z             {
2026-06-07T23:26:20.9582713Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9582803Z               "line": 604
2026-06-07T23:26:20.9582893Z             },
2026-06-07T23:26:20.9582979Z             {
2026-06-07T23:26:20.9583098Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-07T23:26:20.9583188Z               "line": 13
2026-06-07T23:26:20.9583274Z             },
2026-06-07T23:26:20.9583366Z             {
2026-06-07T23:26:20.9583470Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-07T23:26:20.9583565Z               "line": 67
2026-06-07T23:26:20.9583652Z             },
2026-06-07T23:26:20.9583732Z             {
2026-06-07T23:26:20.9583846Z               "path": "crates/spt/src/wansend.rs",
2026-06-07T23:26:20.9583943Z               "line": 18
2026-06-07T23:26:20.9584033Z             },
2026-06-07T23:26:20.9584113Z             {
2026-06-07T23:26:20.9584223Z               "path": "crates/spt/src/wansend.rs",
2026-06-07T23:26:20.9584320Z               "line": 432
2026-06-07T23:26:20.9584409Z             }
2026-06-07T23:26:20.9584495Z           ]
2026-06-07T23:26:20.9584577Z         },
2026-06-07T23:26:20.9584668Z         "int": {
2026-06-07T23:26:20.9584761Z           "complete": false,
2026-06-07T23:26:20.9584861Z           "evidence": []
2026-06-07T23:26:20.9584947Z         },
2026-06-07T23:26:20.9585041Z         "unit": {
2026-06-07T23:26:20.9585360Z           "complete": true,
2026-06-07T23:26:20.9585460Z           "evidence": [
2026-06-07T23:26:20.9585541Z             {
2026-06-07T23:26:20.9585665Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9585774Z               "line": 810
2026-06-07T23:26:20.9585860Z             },
2026-06-07T23:26:20.9585932Z             {
2026-06-07T23:26:20.9586051Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9586141Z               "line": 1080
2026-06-07T23:26:20.9586256Z             },
2026-06-07T23:26:20.9586342Z             {
2026-06-07T23:26:20.9586461Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9586558Z               "line": 1091
2026-06-07T23:26:20.9586642Z             },
2026-06-07T23:26:20.9586728Z             {
2026-06-07T23:26:20.9586844Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9586928Z               "line": 1107
2026-06-07T23:26:20.9587110Z             },
2026-06-07T23:26:20.9587197Z             {
2026-06-07T23:26:20.9587314Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9587404Z               "line": 1123
2026-06-07T23:26:20.9587490Z             },
2026-06-07T23:26:20.9587575Z             {
2026-06-07T23:26:20.9587692Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9587903Z               "line": 1145
2026-06-07T23:26:20.9587988Z             },
2026-06-07T23:26:20.9588069Z             {
2026-06-07T23:26:20.9588184Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9588279Z               "line": 1450
2026-06-07T23:26:20.9588452Z             },
2026-06-07T23:26:20.9588542Z             {
2026-06-07T23:26:20.9588656Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-07T23:26:20.9588747Z               "line": 130
2026-06-07T23:26:20.9588842Z             },
2026-06-07T23:26:20.9588928Z             {
2026-06-07T23:26:20.9589042Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-07T23:26:20.9589133Z               "line": 167
2026-06-07T23:26:20.9589223Z             },
2026-06-07T23:26:20.9589309Z             {
2026-06-07T23:26:20.9589415Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-07T23:26:20.9589509Z               "line": 175
2026-06-07T23:26:20.9589581Z             },
2026-06-07T23:26:20.9589662Z             {
2026-06-07T23:26:20.9589777Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-07T23:26:20.9589862Z               "line": 183
2026-06-07T23:26:20.9589951Z             },
2026-06-07T23:26:20.9590033Z             {
2026-06-07T23:26:20.9590146Z               "path": "crates/spt/src/wansend.rs",
2026-06-07T23:26:20.9590235Z               "line": 882
2026-06-07T23:26:20.9590325Z             }
2026-06-07T23:26:20.9590413Z           ]
2026-06-07T23:26:20.9590503Z         }
2026-06-07T23:26:20.9590593Z       }
2026-06-07T23:26:20.9590674Z     },
2026-06-07T23:26:20.9590761Z     {
2026-06-07T23:26:20.9590851Z       "id": "REQ-INST-11",
2026-06-07T23:26:20.9591061Z       "title": "spt rename <id> rippled to all instances (collision-checked, 6.5-reconciled)",
2026-06-07T23:26:20.9591156Z       "requiredStages": [
2026-06-07T23:26:20.9591241Z         "impl",
2026-06-07T23:26:20.9591333Z         "unit"
2026-06-07T23:26:20.9591418Z       ],
2026-06-07T23:26:20.9591509Z       "stages": {
2026-06-07T23:26:20.9591599Z         "doc": {
2026-06-07T23:26:20.9591700Z           "complete": false,
2026-06-07T23:26:20.9591794Z           "evidence": []
2026-06-07T23:26:20.9591880Z         },
2026-06-07T23:26:20.9591972Z         "impl": {
2026-06-07T23:26:20.9592067Z           "complete": true,
2026-06-07T23:26:20.9592157Z           "evidence": [
2026-06-07T23:26:20.9592243Z             {
2026-06-07T23:26:20.9592363Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9592456Z               "line": 393
2026-06-07T23:26:20.9592549Z             },
2026-06-07T23:26:20.9592635Z             {
2026-06-07T23:26:20.9592766Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:20.9592852Z               "line": 265
2026-06-07T23:26:20.9592933Z             },
2026-06-07T23:26:20.9593024Z             {
2026-06-07T23:26:20.9593138Z               "path": "crates/spt-store/src/rename.rs",
2026-06-07T23:26:20.9593229Z               "line": 59
2026-06-07T23:26:20.9593320Z             },
2026-06-07T23:26:20.9593410Z             {
2026-06-07T23:26:20.9593519Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9593611Z               "line": 3309
2026-06-07T23:26:20.9593697Z             },
2026-06-07T23:26:20.9593791Z             {
2026-06-07T23:26:20.9593893Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9593987Z               "line": 4408
2026-06-07T23:26:20.9594068Z             }
2026-06-07T23:26:20.9594154Z           ]
2026-06-07T23:26:20.9594241Z         },
2026-06-07T23:26:20.9594330Z         "int": {
2026-06-07T23:26:20.9594421Z           "complete": false,
2026-06-07T23:26:20.9594508Z           "evidence": []
2026-06-07T23:26:20.9594589Z         },
2026-06-07T23:26:20.9594673Z         "unit": {
2026-06-07T23:26:20.9594769Z           "complete": true,
2026-06-07T23:26:20.9594856Z           "evidence": [
2026-06-07T23:26:20.9594946Z             {
2026-06-07T23:26:20.9595060Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9595228Z               "line": 1250
2026-06-07T23:26:20.9595312Z             },
2026-06-07T23:26:20.9595383Z             {
2026-06-07T23:26:20.9595502Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9595657Z               "line": 1283
2026-06-07T23:26:20.9595742Z             },
2026-06-07T23:26:20.9595830Z             {
2026-06-07T23:26:20.9595958Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:20.9596053Z               "line": 495
2026-06-07T23:26:20.9596130Z             },
2026-06-07T23:26:20.9596216Z             {
2026-06-07T23:26:20.9596329Z               "path": "crates/spt-store/src/rename.rs",
2026-06-07T23:26:20.9596421Z               "line": 160
2026-06-07T23:26:20.9596511Z             },
2026-06-07T23:26:20.9596597Z             {
2026-06-07T23:26:20.9596711Z               "path": "crates/spt-store/src/rename.rs",
2026-06-07T23:26:20.9596798Z               "line": 190
2026-06-07T23:26:20.9596883Z             },
2026-06-07T23:26:20.9597050Z             {
2026-06-07T23:26:20.9597164Z               "path": "crates/spt-store/src/rename.rs",
2026-06-07T23:26:20.9597255Z               "line": 225
2026-06-07T23:26:20.9597340Z             },
2026-06-07T23:26:20.9597428Z             {
2026-06-07T23:26:20.9597536Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9597632Z               "line": 4648
2026-06-07T23:26:20.9597714Z             }
2026-06-07T23:26:20.9597808Z           ]
2026-06-07T23:26:20.9597893Z         }
2026-06-07T23:26:20.9597973Z       }
2026-06-07T23:26:20.9598060Z     },
2026-06-07T23:26:20.9598144Z     {
2026-06-07T23:26:20.9598238Z       "id": "REQ-INST-12",
2026-06-07T23:26:20.9598515Z       "title": "Endpoint visibility per-(endpoint,subnet): excluded semantics, OR-of-defaults + override, gates sync",
2026-06-07T23:26:20.9598614Z       "requiredStages": [
2026-06-07T23:26:20.9598702Z         "impl",
2026-06-07T23:26:20.9598792Z         "unit"
2026-06-07T23:26:20.9598877Z       ],
2026-06-07T23:26:20.9598968Z       "stages": {
2026-06-07T23:26:20.9599059Z         "doc": {
2026-06-07T23:26:20.9599149Z           "complete": false,
2026-06-07T23:26:20.9599244Z           "evidence": []
2026-06-07T23:26:20.9599332Z         },
2026-06-07T23:26:20.9599421Z         "impl": {
2026-06-07T23:26:20.9599507Z           "complete": true,
2026-06-07T23:26:20.9599593Z           "evidence": [
2026-06-07T23:26:20.9599684Z             {
2026-06-07T23:26:20.9599807Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9599898Z               "line": 445
2026-06-07T23:26:20.9599985Z             },
2026-06-07T23:26:20.9600069Z             {
2026-06-07T23:26:20.9600193Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9600276Z               "line": 538
2026-06-07T23:26:20.9600352Z             },
2026-06-07T23:26:20.9602354Z             {
2026-06-07T23:26:20.9602518Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9602613Z               "line": 618
2026-06-07T23:26:20.9602713Z             },
2026-06-07T23:26:20.9602794Z             {
2026-06-07T23:26:20.9602923Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-07T23:26:20.9603016Z               "line": 87
2026-06-07T23:26:20.9603109Z             },
2026-06-07T23:26:20.9603195Z             {
2026-06-07T23:26:20.9603308Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-07T23:26:20.9603388Z               "line": 216
2026-06-07T23:26:20.9603475Z             },
2026-06-07T23:26:20.9603551Z             {
2026-06-07T23:26:20.9603669Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-07T23:26:20.9603755Z               "line": 135
2026-06-07T23:26:20.9603838Z             }
2026-06-07T23:26:20.9603914Z           ]
2026-06-07T23:26:20.9603998Z         },
2026-06-07T23:26:20.9604079Z         "int": {
2026-06-07T23:26:20.9604166Z           "complete": false,
2026-06-07T23:26:20.9604267Z           "evidence": []
2026-06-07T23:26:20.9604346Z         },
2026-06-07T23:26:20.9604586Z         "unit": {
2026-06-07T23:26:20.9604671Z           "complete": true,
2026-06-07T23:26:20.9604763Z           "evidence": [
2026-06-07T23:26:20.9604848Z             {
2026-06-07T23:26:20.9604971Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9605154Z               "line": 1325
2026-06-07T23:26:20.9605233Z             },
2026-06-07T23:26:20.9605310Z             {
2026-06-07T23:26:20.9605430Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9605520Z               "line": 1348
2026-06-07T23:26:20.9605606Z             },
2026-06-07T23:26:20.9605678Z             {
2026-06-07T23:26:20.9605812Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9605920Z               "line": 1385
2026-06-07T23:26:20.9606005Z             },
2026-06-07T23:26:20.9606096Z             {
2026-06-07T23:26:20.9606203Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-07T23:26:20.9606289Z               "line": 350
2026-06-07T23:26:20.9606375Z             },
2026-06-07T23:26:20.9606451Z             {
2026-06-07T23:26:20.9606560Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-07T23:26:20.9606666Z               "line": 172
2026-06-07T23:26:20.9606761Z             },
2026-06-07T23:26:20.9606847Z             {
2026-06-07T23:26:20.9607039Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-07T23:26:20.9607128Z               "line": 193
2026-06-07T23:26:20.9607214Z             },
2026-06-07T23:26:20.9607296Z             {
2026-06-07T23:26:20.9607410Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-07T23:26:20.9607500Z               "line": 219
2026-06-07T23:26:20.9607581Z             }
2026-06-07T23:26:20.9607664Z           ]
2026-06-07T23:26:20.9607748Z         }
2026-06-07T23:26:20.9607834Z       }
2026-06-07T23:26:20.9607930Z     },
2026-06-07T23:26:20.9608016Z     {
2026-06-07T23:26:20.9608105Z       "id": "REQ-INST-13",
2026-06-07T23:26:20.9608288Z       "title": "Subnet-exclusive sync + per-endpoint subnet-membership list",
2026-06-07T23:26:20.9608387Z       "requiredStages": [
2026-06-07T23:26:20.9608472Z         "impl",
2026-06-07T23:26:20.9608552Z         "unit"
2026-06-07T23:26:20.9608639Z       ],
2026-06-07T23:26:20.9608727Z       "stages": {
2026-06-07T23:26:20.9608818Z         "doc": {
2026-06-07T23:26:20.9608913Z           "complete": false,
2026-06-07T23:26:20.9609009Z           "evidence": []
2026-06-07T23:26:20.9609094Z         },
2026-06-07T23:26:20.9609199Z         "impl": {
2026-06-07T23:26:20.9609290Z           "complete": true,
2026-06-07T23:26:20.9609380Z           "evidence": [
2026-06-07T23:26:20.9609466Z             {
2026-06-07T23:26:20.9609586Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-07T23:26:20.9609676Z               "line": 98
2026-06-07T23:26:20.9609761Z             },
2026-06-07T23:26:20.9609848Z             {
2026-06-07T23:26:20.9609962Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-07T23:26:20.9610057Z               "line": 158
2026-06-07T23:26:20.9610148Z             }
2026-06-07T23:26:20.9610230Z           ]
2026-06-07T23:26:20.9610324Z         },
2026-06-07T23:26:20.9610410Z         "int": {
2026-06-07T23:26:20.9610506Z           "complete": false,
2026-06-07T23:26:20.9610601Z           "evidence": []
2026-06-07T23:26:20.9610687Z         },
2026-06-07T23:26:20.9610777Z         "unit": {
2026-06-07T23:26:20.9610869Z           "complete": true,
2026-06-07T23:26:20.9610963Z           "evidence": [
2026-06-07T23:26:20.9611048Z             {
2026-06-07T23:26:20.9611168Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-07T23:26:20.9611266Z               "line": 248
2026-06-07T23:26:20.9611356Z             },
2026-06-07T23:26:20.9611437Z             {
2026-06-07T23:26:20.9611562Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-07T23:26:20.9611651Z               "line": 266
2026-06-07T23:26:20.9611737Z             }
2026-06-07T23:26:20.9611828Z           ]
2026-06-07T23:26:20.9612018Z         }
2026-06-07T23:26:20.9612104Z       }
2026-06-07T23:26:20.9612191Z     },
2026-06-07T23:26:20.9612272Z     {
2026-06-07T23:26:20.9612366Z       "id": "REQ-INST-14",
2026-06-07T23:26:20.9612724Z       "title": "Resource advertisement (subnet resource registry): free-text blurb, both-authored, registry projection, visibility/whitelist-gated",
2026-06-07T23:26:20.9612919Z       "requiredStages": [
2026-06-07T23:26:20.9613005Z         "doc",
2026-06-07T23:26:20.9613093Z         "impl",
2026-06-07T23:26:20.9613187Z         "unit"
2026-06-07T23:26:20.9613268Z       ],
2026-06-07T23:26:20.9613359Z       "stages": {
2026-06-07T23:26:20.9613445Z         "doc": {
2026-06-07T23:26:20.9613539Z           "complete": true,
2026-06-07T23:26:20.9613635Z           "evidence": [
2026-06-07T23:26:20.9613717Z             {
2026-06-07T23:26:20.9613817Z               "path": "CONTEXT.md",
2026-06-07T23:26:20.9613910Z               "line": 425
2026-06-07T23:26:20.9613996Z             },
2026-06-07T23:26:20.9614083Z             {
2026-06-07T23:26:20.9614187Z               "path": "docs/STORAGE.md",
2026-06-07T23:26:20.9614277Z               "line": 49
2026-06-07T23:26:20.9614364Z             }
2026-06-07T23:26:20.9614450Z           ]
2026-06-07T23:26:20.9614535Z         },
2026-06-07T23:26:20.9614626Z         "impl": {
2026-06-07T23:26:20.9614717Z           "complete": true,
2026-06-07T23:26:20.9614803Z           "evidence": [
2026-06-07T23:26:20.9614892Z             {
2026-06-07T23:26:20.9615022Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9615117Z               "line": 335
2026-06-07T23:26:20.9615202Z             },
2026-06-07T23:26:20.9615288Z             {
2026-06-07T23:26:20.9615408Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9615503Z               "line": 257
2026-06-07T23:26:20.9615589Z             },
2026-06-07T23:26:20.9615671Z             {
2026-06-07T23:26:20.9615788Z               "path": "crates/spt-store/src/info.rs",
2026-06-07T23:26:20.9615880Z               "line": 211
2026-06-07T23:26:20.9615971Z             },
2026-06-07T23:26:20.9616057Z             {
2026-06-07T23:26:20.9616166Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9616258Z               "line": 973
2026-06-07T23:26:20.9616343Z             }
2026-06-07T23:26:20.9616432Z           ]
2026-06-07T23:26:20.9616513Z         },
2026-06-07T23:26:20.9616599Z         "int": {
2026-06-07T23:26:20.9616698Z           "complete": false,
2026-06-07T23:26:20.9616791Z           "evidence": []
2026-06-07T23:26:20.9616882Z         },
2026-06-07T23:26:20.9617055Z         "unit": {
2026-06-07T23:26:20.9617163Z           "complete": true,
2026-06-07T23:26:20.9617250Z           "evidence": [
2026-06-07T23:26:20.9617336Z             {
2026-06-07T23:26:20.9617473Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9617565Z               "line": 899
2026-06-07T23:26:20.9617650Z             },
2026-06-07T23:26:20.9617731Z             {
2026-06-07T23:26:20.9617866Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9617961Z               "line": 822
2026-06-07T23:26:20.9618046Z             },
2026-06-07T23:26:20.9618127Z             {
2026-06-07T23:26:20.9618252Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9618341Z               "line": 1021
2026-06-07T23:26:20.9618427Z             },
2026-06-07T23:26:20.9618514Z             {
2026-06-07T23:26:20.9618628Z               "path": "crates/spt-store/src/info.rs",
2026-06-07T23:26:20.9618718Z               "line": 463
2026-06-07T23:26:20.9618810Z             },
2026-06-07T23:26:20.9618892Z             {
2026-06-07T23:26:20.9618999Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9619088Z               "line": 4724
2026-06-07T23:26:20.9619185Z             }
2026-06-07T23:26:20.9619269Z           ]
2026-06-07T23:26:20.9619358Z         }
2026-06-07T23:26:20.9619439Z       }
2026-06-07T23:26:20.9619526Z     },
2026-06-07T23:26:20.9619716Z     {
2026-06-07T23:26:20.9619812Z       "id": "REQ-INST-15",
2026-06-07T23:26:20.9620480Z       "title": "Immutable home subnet (assigned at creation: auto-if-one/ask-if-many) + spt fork (cross-subnet clone to a new identity, copy-then-diverge, not re-home); adapter chosen at creation from registered hostable adapters, changed only via launch/resume-under-new (ADR-0010)",
2026-06-07T23:26:20.9620665Z       "requiredStages": [
2026-06-07T23:26:20.9620752Z         "doc",
2026-06-07T23:26:20.9620842Z         "impl",
2026-06-07T23:26:20.9620923Z         "unit"
2026-06-07T23:26:20.9621013Z       ],
2026-06-07T23:26:20.9621100Z       "stages": {
2026-06-07T23:26:20.9621189Z         "doc": {
2026-06-07T23:26:20.9621280Z           "complete": true,
2026-06-07T23:26:20.9621377Z           "evidence": [
2026-06-07T23:26:20.9621462Z             {
2026-06-07T23:26:20.9621636Z               "path": "docs/adr/0010-immutable-home-subnet-fork-not-rehome.md",
2026-06-07T23:26:20.9621728Z               "line": 3
2026-06-07T23:26:20.9621817Z             }
2026-06-07T23:26:20.9621902Z           ]
2026-06-07T23:26:20.9621987Z         },
2026-06-07T23:26:20.9622074Z         "impl": {
2026-06-07T23:26:20.9622169Z           "complete": true,
2026-06-07T23:26:20.9622264Z           "evidence": [
2026-06-07T23:26:20.9622354Z             {
2026-06-07T23:26:20.9622484Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9622578Z               "line": 284
2026-06-07T23:26:20.9622660Z             },
2026-06-07T23:26:20.9622751Z             {
2026-06-07T23:26:20.9622864Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-07T23:26:20.9622955Z               "line": 60
2026-06-07T23:26:20.9623046Z             },
2026-06-07T23:26:20.9623132Z             {
2026-06-07T23:26:20.9623260Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:20.9623352Z               "line": 336
2026-06-07T23:26:20.9623437Z             },
2026-06-07T23:26:20.9623523Z             {
2026-06-07T23:26:20.9623653Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:20.9623742Z               "line": 385
2026-06-07T23:26:20.9623828Z             },
2026-06-07T23:26:20.9623914Z             {
2026-06-07T23:26:20.9624029Z               "path": "crates/spt-store/src/home.rs",
2026-06-07T23:26:20.9624123Z               "line": 19
2026-06-07T23:26:20.9624209Z             },
2026-06-07T23:26:20.9624292Z             {
2026-06-07T23:26:20.9624404Z               "path": "crates/spt-store/src/home.rs",
2026-06-07T23:26:20.9624494Z               "line": 70
2026-06-07T23:26:20.9624580Z             },
2026-06-07T23:26:20.9624667Z             {
2026-06-07T23:26:20.9624771Z               "path": "crates/spt-store/src/home.rs",
2026-06-07T23:26:20.9624861Z               "line": 96
2026-06-07T23:26:20.9624943Z             },
2026-06-07T23:26:20.9625039Z             {
2026-06-07T23:26:20.9625147Z               "path": "crates/spt-store/src/home.rs",
2026-06-07T23:26:20.9625239Z               "line": 121
2026-06-07T23:26:20.9625330Z             },
2026-06-07T23:26:20.9625415Z             {
2026-06-07T23:26:20.9625515Z               "path": "crates/spt-store/src/home.rs",
2026-06-07T23:26:20.9625601Z               "line": 172
2026-06-07T23:26:20.9625691Z             },
2026-06-07T23:26:20.9625772Z             {
2026-06-07T23:26:20.9625878Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:20.9625973Z               "line": 143
2026-06-07T23:26:20.9626078Z             },
2026-06-07T23:26:20.9626168Z             {
2026-06-07T23:26:20.9626274Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9626368Z               "line": 865
2026-06-07T23:26:20.9626449Z             }
2026-06-07T23:26:20.9626536Z           ]
2026-06-07T23:26:20.9626622Z         },
2026-06-07T23:26:20.9626706Z         "int": {
2026-06-07T23:26:20.9626808Z           "complete": false,
2026-06-07T23:26:20.9626899Z           "evidence": []
2026-06-07T23:26:20.9627058Z         },
2026-06-07T23:26:20.9627244Z         "unit": {
2026-06-07T23:26:20.9627333Z           "complete": true,
2026-06-07T23:26:20.9627447Z           "evidence": [
2026-06-07T23:26:20.9627534Z             {
2026-06-07T23:26:20.9627657Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:20.9627849Z               "line": 545
2026-06-07T23:26:20.9627930Z             },
2026-06-07T23:26:20.9628009Z             {
2026-06-07T23:26:20.9628125Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:20.9628211Z               "line": 606
2026-06-07T23:26:20.9628292Z             },
2026-06-07T23:26:20.9628372Z             {
2026-06-07T23:26:20.9628469Z               "path": "crates/spt-store/src/home.rs",
2026-06-07T23:26:20.9628563Z               "line": 213
2026-06-07T23:26:20.9628663Z             },
2026-06-07T23:26:20.9628750Z             {
2026-06-07T23:26:20.9628873Z               "path": "crates/spt-store/src/home.rs",
2026-06-07T23:26:20.9628973Z               "line": 249
2026-06-07T23:26:20.9629093Z             },
2026-06-07T23:26:20.9629179Z             {
2026-06-07T23:26:20.9629288Z               "path": "crates/spt-store/src/home.rs",
2026-06-07T23:26:20.9629370Z               "line": 262
2026-06-07T23:26:20.9629452Z             },
2026-06-07T23:26:20.9629540Z             {
2026-06-07T23:26:20.9629649Z               "path": "crates/spt-store/src/home.rs",
2026-06-07T23:26:20.9629754Z               "line": 338
2026-06-07T23:26:20.9629843Z             },
2026-06-07T23:26:20.9629928Z             {
2026-06-07T23:26:20.9630038Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:20.9630129Z               "line": 496
2026-06-07T23:26:20.9630214Z             },
2026-06-07T23:26:20.9630300Z             {
2026-06-07T23:26:20.9630402Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9630496Z               "line": 4661
2026-06-07T23:26:20.9630586Z             },
2026-06-07T23:26:20.9630672Z             {
2026-06-07T23:26:20.9630777Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9630872Z               "line": 6027
2026-06-07T23:26:20.9630953Z             }
2026-06-07T23:26:20.9631040Z           ]
2026-06-07T23:26:20.9631120Z         }
2026-06-07T23:26:20.9631210Z       }
2026-06-07T23:26:20.9631302Z     },
2026-06-07T23:26:20.9631388Z     {
2026-06-07T23:26:20.9631478Z       "id": "REQ-INST-2",
2026-06-07T23:26:20.9631597Z       "title": "Per-node files, synced Psyche mind",
2026-06-07T23:26:20.9631694Z       "requiredStages": [
2026-06-07T23:26:20.9631783Z         "impl",
2026-06-07T23:26:20.9631869Z         "unit"
2026-06-07T23:26:20.9631951Z       ],
2026-06-07T23:26:20.9632041Z       "stages": {
2026-06-07T23:26:20.9632130Z         "doc": {
2026-06-07T23:26:20.9632220Z           "complete": false,
2026-06-07T23:26:20.9632302Z           "evidence": []
2026-06-07T23:26:20.9632395Z         },
2026-06-07T23:26:20.9632485Z         "impl": {
2026-06-07T23:26:20.9632576Z           "complete": true,
2026-06-07T23:26:20.9632672Z           "evidence": [
2026-06-07T23:26:20.9632786Z             {
2026-06-07T23:26:20.9632905Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9633001Z               "line": 86
2026-06-07T23:26:20.9633086Z             },
2026-06-07T23:26:20.9633176Z             {
2026-06-07T23:26:20.9633292Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-07T23:26:20.9633382Z               "line": 28
2026-06-07T23:26:20.9633472Z             },
2026-06-07T23:26:20.9633554Z             {
2026-06-07T23:26:20.9633668Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-07T23:26:20.9633758Z               "line": 74
2026-06-07T23:26:20.9633845Z             },
2026-06-07T23:26:20.9633926Z             {
2026-06-07T23:26:20.9634040Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-07T23:26:20.9634130Z               "line": 96
2026-06-07T23:26:20.9634213Z             },
2026-06-07T23:26:20.9634302Z             {
2026-06-07T23:26:20.9634412Z               "path": "crates/spt-live/src/resume.rs",
2026-06-07T23:26:20.9634579Z               "line": 81
2026-06-07T23:26:20.9634669Z             },
2026-06-07T23:26:20.9634751Z             {
2026-06-07T23:26:20.9634880Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-07T23:26:20.9635031Z               "line": 118
2026-06-07T23:26:20.9635116Z             }
2026-06-07T23:26:20.9635203Z           ]
2026-06-07T23:26:20.9635289Z         },
2026-06-07T23:26:20.9635374Z         "int": {
2026-06-07T23:26:20.9635469Z           "complete": false,
2026-06-07T23:26:20.9635561Z           "evidence": []
2026-06-07T23:26:20.9635641Z         },
2026-06-07T23:26:20.9635731Z         "unit": {
2026-06-07T23:26:20.9635828Z           "complete": true,
2026-06-07T23:26:20.9635918Z           "evidence": [
2026-06-07T23:26:20.9636041Z             {
2026-06-07T23:26:20.9636157Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-07T23:26:20.9636247Z               "line": 212
2026-06-07T23:26:20.9636332Z             },
2026-06-07T23:26:20.9636423Z             {
2026-06-07T23:26:20.9636533Z               "path": "crates/spt-live/src/resume.rs",
2026-06-07T23:26:20.9636623Z               "line": 258
2026-06-07T23:26:20.9636709Z             }
2026-06-07T23:26:20.9636796Z           ]
2026-06-07T23:26:20.9636885Z         }
2026-06-07T23:26:20.9637058Z       }
2026-06-07T23:26:20.9637139Z     },
2026-06-07T23:26:20.9637224Z     {
2026-06-07T23:26:20.9637329Z       "id": "REQ-INST-3",
2026-06-07T23:26:20.9637483Z       "title": "Dormant (warm) / suspended (cold) resting states",
2026-06-07T23:26:20.9637581Z       "requiredStages": [
2026-06-07T23:26:20.9637676Z         "doc",
2026-06-07T23:26:20.9637762Z         "impl",
2026-06-07T23:26:20.9637851Z         "unit"
2026-06-07T23:26:20.9637935Z       ],
2026-06-07T23:26:20.9638027Z       "stages": {
2026-06-07T23:26:20.9638113Z         "doc": {
2026-06-07T23:26:20.9638203Z           "complete": true,
2026-06-07T23:26:20.9638298Z           "evidence": [
2026-06-07T23:26:20.9638380Z             {
2026-06-07T23:26:20.9638504Z               "path": "docs/DORMANCY-BUDGET.md",
2026-06-07T23:26:20.9638589Z               "line": 3
2026-06-07T23:26:20.9638676Z             }
2026-06-07T23:26:20.9638766Z           ]
2026-06-07T23:26:20.9638847Z         },
2026-06-07T23:26:20.9638942Z         "impl": {
2026-06-07T23:26:20.9639033Z           "complete": true,
2026-06-07T23:26:20.9639123Z           "evidence": [
2026-06-07T23:26:20.9639204Z             {
2026-06-07T23:26:20.9639329Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-07T23:26:20.9639419Z               "line": 70
2026-06-07T23:26:20.9639510Z             },
2026-06-07T23:26:20.9639596Z             {
2026-06-07T23:26:20.9639715Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-07T23:26:20.9639805Z               "line": 440
2026-06-07T23:26:20.9639891Z             },
2026-06-07T23:26:20.9639978Z             {
2026-06-07T23:26:20.9640105Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9640190Z               "line": 202
2026-06-07T23:26:20.9640281Z             },
2026-06-07T23:26:20.9640367Z             {
2026-06-07T23:26:20.9640483Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9640569Z               "line": 291
2026-06-07T23:26:20.9640661Z             },
2026-06-07T23:26:20.9640746Z             {
2026-06-07T23:26:20.9640860Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9640952Z               "line": 325
2026-06-07T23:26:20.9641037Z             },
2026-06-07T23:26:20.9641126Z             {
2026-06-07T23:26:20.9641247Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9641337Z               "line": 300
2026-06-07T23:26:20.9641427Z             },
2026-06-07T23:26:20.9641508Z             {
2026-06-07T23:26:20.9641638Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9641724Z               "line": 212
2026-06-07T23:26:20.9641809Z             },
2026-06-07T23:26:20.9641896Z             {
2026-06-07T23:26:20.9642134Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9642225Z               "line": 321
2026-06-07T23:26:20.9642314Z             },
2026-06-07T23:26:20.9642410Z             {
2026-06-07T23:26:20.9642615Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9642710Z               "line": 45
2026-06-07T23:26:20.9642795Z             },
2026-06-07T23:26:20.9642881Z             {
2026-06-07T23:26:20.9643007Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9643097Z               "line": 114
2026-06-07T23:26:20.9643179Z             },
2026-06-07T23:26:20.9643252Z             {
2026-06-07T23:26:20.9643360Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9643446Z               "line": 152
2026-06-07T23:26:20.9643532Z             },
2026-06-07T23:26:20.9643623Z             {
2026-06-07T23:26:20.9643736Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9643838Z               "line": 168
2026-06-07T23:26:20.9643923Z             },
2026-06-07T23:26:20.9644008Z             {
2026-06-07T23:26:20.9644129Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9644223Z               "line": 178
2026-06-07T23:26:20.9644309Z             },
2026-06-07T23:26:20.9644395Z             {
2026-06-07T23:26:20.9644515Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9644605Z               "line": 210
2026-06-07T23:26:20.9644690Z             },
2026-06-07T23:26:20.9644778Z             {
2026-06-07T23:26:20.9644886Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9644986Z               "line": 287
2026-06-07T23:26:20.9645068Z             },
2026-06-07T23:26:20.9645154Z             {
2026-06-07T23:26:20.9645267Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9645359Z               "line": 311
2026-06-07T23:26:20.9645450Z             },
2026-06-07T23:26:20.9645538Z             {
2026-06-07T23:26:20.9645662Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9645749Z               "line": 387
2026-06-07T23:26:20.9645834Z             },
2026-06-07T23:26:20.9645925Z             {
2026-06-07T23:26:20.9646054Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9646149Z               "line": 436
2026-06-07T23:26:20.9646230Z             },
2026-06-07T23:26:20.9646315Z             {
2026-06-07T23:26:20.9646435Z               "path": "crates/spt-daemon/tests/budget.rs",
2026-06-07T23:26:20.9646530Z               "line": 37
2026-06-07T23:26:20.9646615Z             },
2026-06-07T23:26:20.9646698Z             {
2026-06-07T23:26:20.9646821Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9646907Z               "line": 62
2026-06-07T23:26:20.9647140Z             },
2026-06-07T23:26:20.9647231Z             {
2026-06-07T23:26:20.9647356Z               "path": "crates/spt-store/src/info.rs",
2026-06-07T23:26:20.9647450Z               "line": 190
2026-06-07T23:26:20.9647536Z             },
2026-06-07T23:26:20.9647623Z             {
2026-06-07T23:26:20.9647732Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9647826Z               "line": 1121
2026-06-07T23:26:20.9647909Z             }
2026-06-07T23:26:20.9648000Z           ]
2026-06-07T23:26:20.9648079Z         },
2026-06-07T23:26:20.9648169Z         "int": {
2026-06-07T23:26:20.9648265Z           "complete": false,
2026-06-07T23:26:20.9648355Z           "evidence": []
2026-06-07T23:26:20.9648444Z         },
2026-06-07T23:26:20.9648529Z         "unit": {
2026-06-07T23:26:20.9648630Z           "complete": true,
2026-06-07T23:26:20.9648721Z           "evidence": [
2026-06-07T23:26:20.9648810Z             {
2026-06-07T23:26:20.9648935Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-07T23:26:20.9649030Z               "line": 360
2026-06-07T23:26:20.9649116Z             },
2026-06-07T23:26:20.9649206Z             {
2026-06-07T23:26:20.9649431Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9649517Z               "line": 664
2026-06-07T23:26:20.9649603Z             },
2026-06-07T23:26:20.9649693Z             {
2026-06-07T23:26:20.9649904Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9649998Z               "line": 721
2026-06-07T23:26:20.9650079Z             },
2026-06-07T23:26:20.9650170Z             {
2026-06-07T23:26:20.9650303Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9650399Z               "line": 1000
2026-06-07T23:26:20.9650485Z             },
2026-06-07T23:26:20.9650572Z             {
2026-06-07T23:26:20.9650703Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9650788Z               "line": 1091
2026-06-07T23:26:20.9650874Z             },
2026-06-07T23:26:20.9650963Z             {
2026-06-07T23:26:20.9651077Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9651173Z               "line": 447
2026-06-07T23:26:20.9651258Z             },
2026-06-07T23:26:20.9651344Z             {
2026-06-07T23:26:20.9651454Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9651555Z               "line": 483
2026-06-07T23:26:20.9651640Z             },
2026-06-07T23:26:20.9651720Z             {
2026-06-07T23:26:20.9651841Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9651931Z               "line": 538
2026-06-07T23:26:20.9652021Z             },
2026-06-07T23:26:20.9652108Z             {
2026-06-07T23:26:20.9652231Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9652321Z               "line": 695
2026-06-07T23:26:20.9652408Z             },
2026-06-07T23:26:20.9652494Z             {
2026-06-07T23:26:20.9652608Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9652699Z               "line": 929
2026-06-07T23:26:20.9652780Z             },
2026-06-07T23:26:20.9652879Z             {
2026-06-07T23:26:20.9652999Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9653090Z               "line": 943
2026-06-07T23:26:20.9653180Z             },
2026-06-07T23:26:20.9653265Z             {
2026-06-07T23:26:20.9653389Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9653479Z               "line": 1061
2026-06-07T23:26:20.9653567Z             },
2026-06-07T23:26:20.9653653Z             {
2026-06-07T23:26:20.9653764Z               "path": "crates/spt-store/src/info.rs",
2026-06-07T23:26:20.9653854Z               "line": 413
2026-06-07T23:26:20.9653939Z             },
2026-06-07T23:26:20.9654030Z             {
2026-06-07T23:26:20.9654130Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9654225Z               "line": 4685
2026-06-07T23:26:20.9654306Z             }
2026-06-07T23:26:20.9654384Z           ]
2026-06-07T23:26:20.9654469Z         }
2026-06-07T23:26:20.9654549Z       }
2026-06-07T23:26:20.9654635Z     },
2026-06-07T23:26:20.9654718Z     {
2026-06-07T23:26:20.9654812Z       "id": "REQ-INST-4",
2026-06-07T23:26:20.9654984Z       "title": "active to dormant/suspended fires a transition echo commune",
2026-06-07T23:26:20.9655084Z       "requiredStages": [
2026-06-07T23:26:20.9655174Z         "impl",
2026-06-07T23:26:20.9655265Z         "unit"
2026-06-07T23:26:20.9655357Z       ],
2026-06-07T23:26:20.9655441Z       "stages": {
2026-06-07T23:26:20.9655532Z         "doc": {
2026-06-07T23:26:20.9655628Z           "complete": false,
2026-06-07T23:26:20.9655719Z           "evidence": []
2026-06-07T23:26:20.9655803Z         },
2026-06-07T23:26:20.9655890Z         "impl": {
2026-06-07T23:26:20.9655982Z           "complete": true,
2026-06-07T23:26:20.9656071Z           "evidence": [
2026-06-07T23:26:20.9656156Z             {
2026-06-07T23:26:20.9656280Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9656366Z               "line": 292
2026-06-07T23:26:20.9656451Z             },
2026-06-07T23:26:20.9656614Z             {
2026-06-07T23:26:20.9656733Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9656818Z               "line": 202
2026-06-07T23:26:20.9656904Z             },
2026-06-07T23:26:20.9657171Z             {
2026-06-07T23:26:20.9657305Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9657396Z               "line": 234
2026-06-07T23:26:20.9657481Z             },
2026-06-07T23:26:20.9657573Z             {
2026-06-07T23:26:20.9657686Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9657777Z               "line": 274
2026-06-07T23:26:20.9657863Z             }
2026-06-07T23:26:20.9657944Z           ]
2026-06-07T23:26:20.9658034Z         },
2026-06-07T23:26:20.9658120Z         "int": {
2026-06-07T23:26:20.9658217Z           "complete": false,
2026-06-07T23:26:20.9658311Z           "evidence": []
2026-06-07T23:26:20.9658401Z         },
2026-06-07T23:26:20.9658498Z         "unit": {
2026-06-07T23:26:20.9658598Z           "complete": true,
2026-06-07T23:26:20.9658687Z           "evidence": [
2026-06-07T23:26:20.9658772Z             {
2026-06-07T23:26:20.9658891Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:20.9658990Z               "line": 716
2026-06-07T23:26:20.9659075Z             },
2026-06-07T23:26:20.9659161Z             {
2026-06-07T23:26:20.9659281Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9659375Z               "line": 559
2026-06-07T23:26:20.9659461Z             },
2026-06-07T23:26:20.9659548Z             {
2026-06-07T23:26:20.9659671Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9659762Z               "line": 666
2026-06-07T23:26:20.9659848Z             },
2026-06-07T23:26:20.9659938Z             {
2026-06-07T23:26:20.9660052Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9660140Z               "line": 748
2026-06-07T23:26:20.9660234Z             }
2026-06-07T23:26:20.9660320Z           ]
2026-06-07T23:26:20.9660401Z         }
2026-06-07T23:26:20.9660488Z       }
2026-06-07T23:26:20.9660568Z     },
2026-06-07T23:26:20.9660654Z     {
2026-06-07T23:26:20.9660745Z       "id": "REQ-INST-5",
2026-06-07T23:26:20.9660925Z       "title": "Two-tier context sync (live to all, project to same-project)",
2026-06-07T23:26:20.9661026Z       "requiredStages": [
2026-06-07T23:26:20.9661112Z         "impl",
2026-06-07T23:26:20.9661197Z         "unit",
2026-06-07T23:26:20.9661282Z         "int"
2026-06-07T23:26:20.9661367Z       ],
2026-06-07T23:26:20.9661453Z       "stages": {
2026-06-07T23:26:20.9661547Z         "doc": {
2026-06-07T23:26:20.9661642Z           "complete": false,
2026-06-07T23:26:20.9661733Z           "evidence": []
2026-06-07T23:26:20.9661819Z         },
2026-06-07T23:26:20.9661904Z         "impl": {
2026-06-07T23:26:20.9661995Z           "complete": true,
2026-06-07T23:26:20.9662091Z           "evidence": [
2026-06-07T23:26:20.9662172Z             {
2026-06-07T23:26:20.9662310Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9662406Z               "line": 39
2026-06-07T23:26:20.9662491Z             },
2026-06-07T23:26:20.9662576Z             {
2026-06-07T23:26:20.9662706Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-07T23:26:20.9662796Z               "line": 68
2026-06-07T23:26:20.9662886Z             },
2026-06-07T23:26:20.9662973Z             {
2026-06-07T23:26:20.9663083Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-07T23:26:20.9663173Z               "line": 97
2026-06-07T23:26:20.9663259Z             },
2026-06-07T23:26:20.9663345Z             {
2026-06-07T23:26:20.9663454Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-07T23:26:20.9663544Z               "line": 180
2026-06-07T23:26:20.9663632Z             },
2026-06-07T23:26:20.9663713Z             {
2026-06-07T23:26:20.9663825Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-07T23:26:20.9663915Z               "line": 311
2026-06-07T23:26:20.9664104Z             }
2026-06-07T23:26:20.9664185Z           ]
2026-06-07T23:26:20.9664271Z         },
2026-06-07T23:26:20.9664357Z         "int": {
2026-06-07T23:26:20.9664452Z           "complete": true,
2026-06-07T23:26:20.9664649Z           "evidence": [
2026-06-07T23:26:20.9664730Z             {
2026-06-07T23:26:20.9664866Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-07T23:26:20.9664954Z               "line": 146
2026-06-07T23:26:20.9665038Z             },
2026-06-07T23:26:20.9665128Z             {
2026-06-07T23:26:20.9665249Z               "path": "crates/spt-daemon/tests/peerloop.rs",
2026-06-07T23:26:20.9665343Z               "line": 102
2026-06-07T23:26:20.9665424Z             },
2026-06-07T23:26:20.9665520Z             {
2026-06-07T23:26:20.9665635Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:20.9665730Z               "line": 635
2026-06-07T23:26:20.9665820Z             },
2026-06-07T23:26:20.9665907Z             {
2026-06-07T23:26:20.9666025Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:20.9666116Z               "line": 972
2026-06-07T23:26:20.9666203Z             }
2026-06-07T23:26:20.9666288Z           ]
2026-06-07T23:26:20.9666382Z         },
2026-06-07T23:26:20.9666464Z         "unit": {
2026-06-07T23:26:20.9666561Z           "complete": true,
2026-06-07T23:26:20.9668876Z           "evidence": [
2026-06-07T23:26:20.9668986Z             {
2026-06-07T23:26:20.9669121Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-07T23:26:20.9669213Z               "line": 520
2026-06-07T23:26:20.9669308Z             },
2026-06-07T23:26:20.9669394Z             {
2026-06-07T23:26:20.9669512Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-07T23:26:20.9669607Z               "line": 563
2026-06-07T23:26:20.9669688Z             },
2026-06-07T23:26:20.9669774Z             {
2026-06-07T23:26:20.9669893Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-07T23:26:20.9669998Z               "line": 210
2026-06-07T23:26:20.9670084Z             }
2026-06-07T23:26:20.9670165Z           ]
2026-06-07T23:26:20.9670255Z         }
2026-06-07T23:26:20.9670336Z       }
2026-06-07T23:26:20.9670422Z     },
2026-06-07T23:26:20.9670513Z     {
2026-06-07T23:26:20.9670608Z       "id": "REQ-INST-6",
2026-06-07T23:26:20.9670789Z       "title": "Deferred messages not delivered to dormant/suspended instances",
2026-06-07T23:26:20.9670884Z       "requiredStages": [
2026-06-07T23:26:20.9670980Z         "impl",
2026-06-07T23:26:20.9671066Z         "unit",
2026-06-07T23:26:20.9671156Z         "int"
2026-06-07T23:26:20.9671237Z       ],
2026-06-07T23:26:20.9671325Z       "stages": {
2026-06-07T23:26:20.9671414Z         "doc": {
2026-06-07T23:26:20.9671505Z           "complete": true,
2026-06-07T23:26:20.9671596Z           "evidence": [
2026-06-07T23:26:20.9671682Z             {
2026-06-07T23:26:20.9671785Z               "path": "docs/DEFERRED.md",
2026-06-07T23:26:20.9671875Z               "line": 13
2026-06-07T23:26:20.9671966Z             }
2026-06-07T23:26:20.9672051Z           ]
2026-06-07T23:26:20.9672136Z         },
2026-06-07T23:26:20.9672226Z         "impl": {
2026-06-07T23:26:20.9672317Z           "complete": true,
2026-06-07T23:26:20.9672417Z           "evidence": [
2026-06-07T23:26:20.9672502Z             {
2026-06-07T23:26:20.9672627Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-07T23:26:20.9672722Z               "line": 377
2026-06-07T23:26:20.9672807Z             },
2026-06-07T23:26:20.9672893Z             {
2026-06-07T23:26:20.9673013Z               "path": "crates/spt-daemon/src/resthost.rs",
2026-06-07T23:26:20.9673098Z               "line": 27
2026-06-07T23:26:20.9673189Z             },
2026-06-07T23:26:20.9673271Z             {
2026-06-07T23:26:20.9673385Z               "path": "crates/spt-daemon/src/resthost.rs",
2026-06-07T23:26:20.9673470Z               "line": 73
2026-06-07T23:26:20.9673558Z             },
2026-06-07T23:26:20.9673638Z             {
2026-06-07T23:26:20.9673891Z               "path": "crates/spt-daemon/src/resthost.rs",
2026-06-07T23:26:20.9673976Z               "line": 182
2026-06-07T23:26:20.9674067Z             },
2026-06-07T23:26:20.9674153Z             {
2026-06-07T23:26:20.9674352Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9674452Z               "line": 424
2026-06-07T23:26:20.9674533Z             },
2026-06-07T23:26:20.9674618Z             {
2026-06-07T23:26:20.9674735Z               "path": "crates/spt-net/src/net/rest.rs",
2026-06-07T23:26:20.9674821Z               "line": 31
2026-06-07T23:26:20.9674917Z             },
2026-06-07T23:26:20.9674998Z             {
2026-06-07T23:26:20.9675112Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-07T23:26:20.9675194Z               "line": 182
2026-06-07T23:26:20.9675290Z             },
2026-06-07T23:26:20.9675378Z             {
2026-06-07T23:26:20.9675489Z               "path": "crates/spt/src/api/worker.rs",
2026-06-07T23:26:20.9675584Z               "line": 81
2026-06-07T23:26:20.9675670Z             },
2026-06-07T23:26:20.9675755Z             {
2026-06-07T23:26:20.9675861Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9675952Z               "line": 1122
2026-06-07T23:26:20.9676037Z             },
2026-06-07T23:26:20.9676124Z             {
2026-06-07T23:26:20.9676237Z               "path": "crates/spt/src/wansend.rs",
2026-06-07T23:26:20.9676323Z               "line": 179
2026-06-07T23:26:20.9676410Z             },
2026-06-07T23:26:20.9676491Z             {
2026-06-07T23:26:20.9676599Z               "path": "crates/spt/src/wansend.rs",
2026-06-07T23:26:20.9676691Z               "line": 215
2026-06-07T23:26:20.9676763Z             }
2026-06-07T23:26:20.9676853Z           ]
2026-06-07T23:26:20.9676937Z         },
2026-06-07T23:26:20.9677131Z         "int": {
2026-06-07T23:26:20.9677210Z           "complete": true,
2026-06-07T23:26:20.9677304Z           "evidence": [
2026-06-07T23:26:20.9677386Z             {
2026-06-07T23:26:20.9677502Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:20.9677590Z               "line": 649
2026-06-07T23:26:20.9677661Z             },
2026-06-07T23:26:20.9677749Z             {
2026-06-07T23:26:20.9677868Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:20.9677962Z               "line": 1017
2026-06-07T23:26:20.9678044Z             },
2026-06-07T23:26:20.9678130Z             {
2026-06-07T23:26:20.9678239Z               "path": "crates/spt/src/wansend.rs",
2026-06-07T23:26:20.9678325Z               "line": 712
2026-06-07T23:26:20.9678407Z             }
2026-06-07T23:26:20.9678482Z           ]
2026-06-07T23:26:20.9678568Z         },
2026-06-07T23:26:20.9678654Z         "unit": {
2026-06-07T23:26:20.9678745Z           "complete": true,
2026-06-07T23:26:20.9678840Z           "evidence": [
2026-06-07T23:26:20.9678921Z             {
2026-06-07T23:26:20.9679042Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-07T23:26:20.9679130Z               "line": 620
2026-06-07T23:26:20.9679216Z             },
2026-06-07T23:26:20.9679303Z             {
2026-06-07T23:26:20.9679417Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:20.9679507Z               "line": 897
2026-06-07T23:26:20.9679594Z             },
2026-06-07T23:26:20.9679685Z             {
2026-06-07T23:26:20.9679797Z               "path": "crates/spt-net/src/net/rest.rs",
2026-06-07T23:26:20.9679897Z               "line": 66
2026-06-07T23:26:20.9679983Z             },
2026-06-07T23:26:20.9680063Z             {
2026-06-07T23:26:20.9680162Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-07T23:26:20.9680248Z               "line": 272
2026-06-07T23:26:20.9680334Z             },
2026-06-07T23:26:20.9680415Z             {
2026-06-07T23:26:20.9680528Z               "path": "crates/spt/src/api/worker.rs",
2026-06-07T23:26:20.9680616Z               "line": 201
2026-06-07T23:26:20.9680701Z             }
2026-06-07T23:26:20.9680786Z           ]
2026-06-07T23:26:20.9680964Z         }
2026-06-07T23:26:20.9681049Z       }
2026-06-07T23:26:20.9681135Z     },
2026-06-07T23:26:20.9681216Z     {
2026-06-07T23:26:20.9681311Z       "id": "REQ-INST-7",
2026-06-07T23:26:20.9681449Z       "title": "Subnet registry + bare-id resolution policy",
2026-06-07T23:26:20.9681640Z       "requiredStages": [
2026-06-07T23:26:20.9681721Z         "impl",
2026-06-07T23:26:20.9681802Z         "unit",
2026-06-07T23:26:20.9681890Z         "int"
2026-06-07T23:26:20.9681974Z       ],
2026-06-07T23:26:20.9682065Z       "stages": {
2026-06-07T23:26:20.9682146Z         "doc": {
2026-06-07T23:26:20.9682242Z           "complete": false,
2026-06-07T23:26:20.9682336Z           "evidence": []
2026-06-07T23:26:20.9682421Z         },
2026-06-07T23:26:20.9682507Z         "impl": {
2026-06-07T23:26:20.9682602Z           "complete": true,
2026-06-07T23:26:20.9682691Z           "evidence": [
2026-06-07T23:26:20.9682776Z             {
2026-06-07T23:26:20.9682897Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-07T23:26:20.9682991Z               "line": 412
2026-06-07T23:26:20.9683081Z             },
2026-06-07T23:26:20.9683163Z             {
2026-06-07T23:26:20.9683282Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9683372Z               "line": 40
2026-06-07T23:26:20.9683444Z             },
2026-06-07T23:26:20.9683531Z             {
2026-06-07T23:26:20.9683658Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9683754Z               "line": 27
2026-06-07T23:26:20.9683840Z             },
2026-06-07T23:26:20.9683930Z             {
2026-06-07T23:26:20.9684054Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9684141Z               "line": 185
2026-06-07T23:26:20.9684226Z             },
2026-06-07T23:26:20.9684307Z             {
2026-06-07T23:26:20.9684427Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9684522Z               "line": 275
2026-06-07T23:26:20.9684612Z             },
2026-06-07T23:26:20.9684693Z             {
2026-06-07T23:26:20.9684809Z               "path": "crates/spt-net/src/net/ndjson.rs",
2026-06-07T23:26:20.9684898Z               "line": 59
2026-06-07T23:26:20.9684988Z             },
2026-06-07T23:26:20.9685074Z             {
2026-06-07T23:26:20.9685196Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9685281Z               "line": 41
2026-06-07T23:26:20.9685366Z             },
2026-06-07T23:26:20.9685449Z             {
2026-06-07T23:26:20.9685572Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-07T23:26:20.9685662Z               "line": 27
2026-06-07T23:26:20.9685744Z             },
2026-06-07T23:26:20.9685820Z             {
2026-06-07T23:26:20.9685934Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-07T23:26:20.9686020Z               "line": 59
2026-06-07T23:26:20.9686112Z             },
2026-06-07T23:26:20.9686197Z             {
2026-06-07T23:26:20.9686316Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-07T23:26:20.9686407Z               "line": 68
2026-06-07T23:26:20.9686492Z             },
2026-06-07T23:26:20.9686578Z             {
2026-06-07T23:26:20.9686689Z               "path": "crates/spt-store/src/registry.rs",
2026-06-07T23:26:20.9686784Z               "line": 139
2026-06-07T23:26:20.9686874Z             }
2026-06-07T23:26:20.9687037Z           ]
2026-06-07T23:26:20.9687117Z         },
2026-06-07T23:26:20.9687203Z         "int": {
2026-06-07T23:26:20.9687294Z           "complete": true,
2026-06-07T23:26:20.9687385Z           "evidence": [
2026-06-07T23:26:20.9687469Z             {
2026-06-07T23:26:20.9687590Z               "path": "crates/spt-daemon/tests/peerloop.rs",
2026-06-07T23:26:20.9687681Z               "line": 102
2026-06-07T23:26:20.9687770Z             },
2026-06-07T23:26:20.9687845Z             {
2026-06-07T23:26:20.9687965Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:20.9688056Z               "line": 593
2026-06-07T23:26:20.9688256Z             },
2026-06-07T23:26:20.9688342Z             {
2026-06-07T23:26:20.9688456Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:20.9688551Z               "line": 867
2026-06-07T23:26:20.9688709Z             }
2026-06-07T23:26:20.9688789Z           ]
2026-06-07T23:26:20.9688880Z         },
2026-06-07T23:26:20.9688967Z         "unit": {
2026-06-07T23:26:20.9689067Z           "complete": true,
2026-06-07T23:26:20.9689156Z           "evidence": [
2026-06-07T23:26:20.9689243Z             {
2026-06-07T23:26:20.9689371Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9689462Z               "line": 870
2026-06-07T23:26:20.9689549Z             },
2026-06-07T23:26:20.9689630Z             {
2026-06-07T23:26:20.9689753Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9689844Z               "line": 1152
2026-06-07T23:26:20.9689931Z             },
2026-06-07T23:26:20.9690019Z             {
2026-06-07T23:26:20.9690144Z               "path": "crates/spt-daemon/tests/replicate.rs",
2026-06-07T23:26:20.9690236Z               "line": 83
2026-06-07T23:26:20.9690306Z             },
2026-06-07T23:26:20.9690386Z             {
2026-06-07T23:26:20.9690505Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9690596Z               "line": 690
2026-06-07T23:26:20.9690679Z             },
2026-06-07T23:26:20.9690769Z             {
2026-06-07T23:26:20.9690885Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9690975Z               "line": 701
2026-06-07T23:26:20.9691065Z             },
2026-06-07T23:26:20.9691142Z             {
2026-06-07T23:26:20.9691252Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9691346Z               "line": 716
2026-06-07T23:26:20.9691432Z             },
2026-06-07T23:26:20.9691515Z             {
2026-06-07T23:26:20.9691633Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-07T23:26:20.9691728Z               "line": 99
2026-06-07T23:26:20.9691815Z             },
2026-06-07T23:26:20.9691895Z             {
2026-06-07T23:26:20.9692014Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-07T23:26:20.9692110Z               "line": 114
2026-06-07T23:26:20.9692196Z             },
2026-06-07T23:26:20.9692281Z             {
2026-06-07T23:26:20.9692406Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-07T23:26:20.9692497Z               "line": 147
2026-06-07T23:26:20.9692581Z             }
2026-06-07T23:26:20.9692663Z           ]
2026-06-07T23:26:20.9692745Z         }
2026-06-07T23:26:20.9692835Z       }
2026-06-07T23:26:20.9692915Z     },
2026-06-07T23:26:20.9693000Z     {
2026-06-07T23:26:20.9693096Z       "id": "REQ-INST-8",
2026-06-07T23:26:20.9693246Z       "title": "Remote-control mode distinct from local operation",
2026-06-07T23:26:20.9693350Z       "requiredStages": [
2026-06-07T23:26:20.9693432Z         "impl",
2026-06-07T23:26:20.9693523Z         "unit",
2026-06-07T23:26:20.9693599Z         "int"
2026-06-07T23:26:20.9693680Z       ],
2026-06-07T23:26:20.9693762Z       "stages": {
2026-06-07T23:26:20.9693847Z         "doc": {
2026-06-07T23:26:20.9693942Z           "complete": false,
2026-06-07T23:26:20.9694048Z           "evidence": []
2026-06-07T23:26:20.9694147Z         },
2026-06-07T23:26:20.9694233Z         "impl": {
2026-06-07T23:26:20.9694329Z           "complete": true,
2026-06-07T23:26:20.9694410Z           "evidence": [
2026-06-07T23:26:20.9694491Z             {
2026-06-07T23:26:20.9694614Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-07T23:26:20.9694706Z               "line": 98
2026-06-07T23:26:20.9694786Z             },
2026-06-07T23:26:20.9694872Z             {
2026-06-07T23:26:20.9694987Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-07T23:26:20.9695078Z               "line": 209
2026-06-07T23:26:20.9695158Z             },
2026-06-07T23:26:20.9695239Z             {
2026-06-07T23:26:20.9695416Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-07T23:26:20.9695510Z               "line": 230
2026-06-07T23:26:20.9695591Z             },
2026-06-07T23:26:20.9695677Z             {
2026-06-07T23:26:20.9695855Z               "path": "crates/spt-net/src/net/attach.rs",
2026-06-07T23:26:20.9695946Z               "line": 35
2026-06-07T23:26:20.9696033Z             }
2026-06-07T23:26:20.9696113Z           ]
2026-06-07T23:26:20.9696198Z         },
2026-06-07T23:26:20.9696280Z         "int": {
2026-06-07T23:26:20.9696376Z           "complete": true,
2026-06-07T23:26:20.9696466Z           "evidence": [
2026-06-07T23:26:20.9696547Z             {
2026-06-07T23:26:20.9696672Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-07T23:26:20.9696762Z               "line": 404
2026-06-07T23:26:20.9696847Z             },
2026-06-07T23:26:20.9696925Z             {
2026-06-07T23:26:20.9697133Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:20.9697230Z               "line": 931
2026-06-07T23:26:20.9697311Z             }
2026-06-07T23:26:20.9697395Z           ]
2026-06-07T23:26:20.9697486Z         },
2026-06-07T23:26:20.9697573Z         "unit": {
2026-06-07T23:26:20.9697663Z           "complete": true,
2026-06-07T23:26:20.9697758Z           "evidence": [
2026-06-07T23:26:20.9697835Z             {
2026-06-07T23:26:20.9697950Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-07T23:26:20.9698043Z               "line": 180
2026-06-07T23:26:20.9698125Z             },
2026-06-07T23:26:20.9698208Z             {
2026-06-07T23:26:20.9698325Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-07T23:26:20.9698420Z               "line": 258
2026-06-07T23:26:20.9698501Z             },
2026-06-07T23:26:20.9698574Z             {
2026-06-07T23:26:20.9698683Z               "path": "crates/spt-net/src/net/attach.rs",
2026-06-07T23:26:20.9698772Z               "line": 70
2026-06-07T23:26:20.9698859Z             },
2026-06-07T23:26:20.9698945Z             {
2026-06-07T23:26:20.9699063Z               "path": "crates/spt-net/src/net/attach.rs",
2026-06-07T23:26:20.9699150Z               "line": 110
2026-06-07T23:26:20.9699241Z             }
2026-06-07T23:26:20.9699322Z           ]
2026-06-07T23:26:20.9699407Z         }
2026-06-07T23:26:20.9699479Z       }
2026-06-07T23:26:20.9699565Z     },
2026-06-07T23:26:20.9699651Z     {
2026-06-07T23:26:20.9699741Z       "id": "REQ-INST-9",
2026-06-07T23:26:20.9699922Z       "title": "Multi-subnet membership (same-user N subnets; cross-user seam)",
2026-06-07T23:26:20.9700017Z       "requiredStages": [
2026-06-07T23:26:20.9700104Z         "impl",
2026-06-07T23:26:20.9700190Z         "unit"
2026-06-07T23:26:20.9700265Z       ],
2026-06-07T23:26:20.9700351Z       "stages": {
2026-06-07T23:26:20.9700443Z         "doc": {
2026-06-07T23:26:20.9700542Z           "complete": false,
2026-06-07T23:26:20.9700637Z           "evidence": []
2026-06-07T23:26:20.9700719Z         },
2026-06-07T23:26:20.9700810Z         "impl": {
2026-06-07T23:26:20.9700903Z           "complete": true,
2026-06-07T23:26:20.9700998Z           "evidence": [
2026-06-07T23:26:20.9701084Z             {
2026-06-07T23:26:20.9701202Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9701296Z               "line": 328
2026-06-07T23:26:20.9701383Z             }
2026-06-07T23:26:20.9701469Z           ]
2026-06-07T23:26:20.9701554Z         },
2026-06-07T23:26:20.9701644Z         "int": {
2026-06-07T23:26:20.9701736Z           "complete": false,
2026-06-07T23:26:20.9701826Z           "evidence": []
2026-06-07T23:26:20.9701906Z         },
2026-06-07T23:26:20.9701987Z         "unit": {
2026-06-07T23:26:20.9702085Z           "complete": true,
2026-06-07T23:26:20.9702174Z           "evidence": [
2026-06-07T23:26:20.9702264Z             {
2026-06-07T23:26:20.9702390Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9702484Z               "line": 1168
2026-06-07T23:26:20.9702569Z             },
2026-06-07T23:26:20.9702738Z             {
2026-06-07T23:26:20.9702861Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9702951Z               "line": 1177
2026-06-07T23:26:20.9703038Z             },
2026-06-07T23:26:20.9703213Z             {
2026-06-07T23:26:20.9703334Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9703423Z               "line": 1193
2026-06-07T23:26:20.9703504Z             },
2026-06-07T23:26:20.9703593Z             {
2026-06-07T23:26:20.9703713Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9703806Z               "line": 1205
2026-06-07T23:26:20.9703896Z             },
2026-06-07T23:26:20.9703978Z             {
2026-06-07T23:26:20.9704097Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9704183Z               "line": 1225
2026-06-07T23:26:20.9704268Z             }
2026-06-07T23:26:20.9704355Z           ]
2026-06-07T23:26:20.9704440Z         }
2026-06-07T23:26:20.9704530Z       }
2026-06-07T23:26:20.9704613Z     },
2026-06-07T23:26:20.9704698Z     {
2026-06-07T23:26:20.9704793Z       "id": "REQ-INSTALL-1",
2026-06-07T23:26:20.9704980Z       "title": "Two install paths; signed one-line script; OS-service registration",
2026-06-07T23:26:20.9705079Z       "requiredStages": [
2026-06-07T23:26:20.9705165Z         "doc",
2026-06-07T23:26:20.9705252Z         "impl",
2026-06-07T23:26:20.9705337Z         "int"
2026-06-07T23:26:20.9705422Z       ],
2026-06-07T23:26:20.9705508Z       "stages": {
2026-06-07T23:26:20.9705595Z         "doc": {
2026-06-07T23:26:20.9705689Z           "complete": true,
2026-06-07T23:26:20.9705780Z           "evidence": [
2026-06-07T23:26:20.9705867Z             {
2026-06-07T23:26:20.9705962Z               "path": "CONTEXT.md",
2026-06-07T23:26:20.9706051Z               "line": 560
2026-06-07T23:26:20.9706136Z             }
2026-06-07T23:26:20.9706223Z           ]
2026-06-07T23:26:20.9706307Z         },
2026-06-07T23:26:20.9706392Z         "impl": {
2026-06-07T23:26:20.9706492Z           "complete": true,
2026-06-07T23:26:20.9706579Z           "evidence": [
2026-06-07T23:26:20.9706669Z             {
2026-06-07T23:26:20.9706773Z               "path": "installer/install.ps1",
2026-06-07T23:26:20.9706869Z               "line": 57
2026-06-07T23:26:20.9707059Z             },
2026-06-07T23:26:20.9707140Z             {
2026-06-07T23:26:20.9707241Z               "path": "installer/install.sh",
2026-06-07T23:26:20.9707331Z               "line": 52
2026-06-07T23:26:20.9707446Z             }
2026-06-07T23:26:20.9707532Z           ]
2026-06-07T23:26:20.9707608Z         },
2026-06-07T23:26:20.9707694Z         "int": {
2026-06-07T23:26:20.9707785Z           "complete": true,
2026-06-07T23:26:20.9707880Z           "evidence": [
2026-06-07T23:26:20.9707970Z             {
2026-06-07T23:26:20.9708090Z               "path": "crates/spt/tests/oneliner_e2e.rs",
2026-06-07T23:26:20.9708176Z               "line": 21
2026-06-07T23:26:20.9708266Z             }
2026-06-07T23:26:20.9708356Z           ]
2026-06-07T23:26:20.9708434Z         },
2026-06-07T23:26:20.9708524Z         "unit": {
2026-06-07T23:26:20.9708622Z           "complete": false,
2026-06-07T23:26:20.9708715Z           "evidence": []
2026-06-07T23:26:20.9708801Z         }
2026-06-07T23:26:20.9708895Z       }
2026-06-07T23:26:20.9708970Z     },
2026-06-07T23:26:20.9709061Z     {
2026-06-07T23:26:20.9709153Z       "id": "REQ-INSTALL-2",
2026-06-07T23:26:20.9709299Z       "title": "Marketplace-repackaging-friendly install",
2026-06-07T23:26:20.9709400Z       "requiredStages": [
2026-06-07T23:26:20.9709481Z         "doc"
2026-06-07T23:26:20.9709567Z       ],
2026-06-07T23:26:20.9709652Z       "stages": {
2026-06-07T23:26:20.9709739Z         "doc": {
2026-06-07T23:26:20.9709834Z           "complete": true,
2026-06-07T23:26:20.9709928Z           "evidence": [
2026-06-07T23:26:20.9710015Z             {
2026-06-07T23:26:20.9710106Z               "path": "CONTEXT.md",
2026-06-07T23:26:20.9710197Z               "line": 561
2026-06-07T23:26:20.9710383Z             }
2026-06-07T23:26:20.9710473Z           ]
2026-06-07T23:26:20.9710558Z         },
2026-06-07T23:26:20.9710644Z         "impl": {
2026-06-07T23:26:20.9710740Z           "complete": false,
2026-06-07T23:26:20.9710911Z           "evidence": []
2026-06-07T23:26:20.9710998Z         },
2026-06-07T23:26:20.9711084Z         "int": {
2026-06-07T23:26:20.9711177Z           "complete": false,
2026-06-07T23:26:20.9711260Z           "evidence": []
2026-06-07T23:26:20.9711351Z         },
2026-06-07T23:26:20.9711450Z         "unit": {
2026-06-07T23:26:20.9711539Z           "complete": false,
2026-06-07T23:26:20.9711630Z           "evidence": []
2026-06-07T23:26:20.9711716Z         }
2026-06-07T23:26:20.9711804Z       }
2026-06-07T23:26:20.9711894Z     },
2026-06-07T23:26:20.9711976Z     {
2026-06-07T23:26:20.9712072Z       "id": "REQ-INSTALL-3",
2026-06-07T23:26:20.9712209Z       "title": "Idempotent + interactive-optional first run",
2026-06-07T23:26:20.9712311Z       "requiredStages": [
2026-06-07T23:26:20.9712406Z         "impl",
2026-06-07T23:26:20.9712495Z         "int"
2026-06-07T23:26:20.9712582Z       ],
2026-06-07T23:26:20.9712668Z       "stages": {
2026-06-07T23:26:20.9712754Z         "doc": {
2026-06-07T23:26:20.9712849Z           "complete": false,
2026-06-07T23:26:20.9712940Z           "evidence": []
2026-06-07T23:26:20.9713025Z         },
2026-06-07T23:26:20.9713120Z         "impl": {
2026-06-07T23:26:20.9713211Z           "complete": true,
2026-06-07T23:26:20.9713303Z           "evidence": [
2026-06-07T23:26:20.9713387Z             {
2026-06-07T23:26:20.9713502Z               "path": "installer/install.ps1",
2026-06-07T23:26:20.9713594Z               "line": 100
2026-06-07T23:26:20.9713678Z             },
2026-06-07T23:26:20.9713764Z             {
2026-06-07T23:26:20.9713875Z               "path": "installer/install.ps1",
2026-06-07T23:26:20.9713965Z               "line": 111
2026-06-07T23:26:20.9714049Z             },
2026-06-07T23:26:20.9714134Z             {
2026-06-07T23:26:20.9714245Z               "path": "installer/install.sh",
2026-06-07T23:26:20.9714333Z               "line": 79
2026-06-07T23:26:20.9714423Z             }
2026-06-07T23:26:20.9714509Z           ]
2026-06-07T23:26:20.9714596Z         },
2026-06-07T23:26:20.9714685Z         "int": {
2026-06-07T23:26:20.9714780Z           "complete": true,
2026-06-07T23:26:20.9714868Z           "evidence": [
2026-06-07T23:26:20.9714958Z             {
2026-06-07T23:26:20.9715081Z               "path": "crates/spt/tests/oneliner_e2e.rs",
2026-06-07T23:26:20.9715183Z               "line": 167
2026-06-07T23:26:20.9715267Z             }
2026-06-07T23:26:20.9715353Z           ]
2026-06-07T23:26:20.9715429Z         },
2026-06-07T23:26:20.9715507Z         "unit": {
2026-06-07T23:26:20.9715601Z           "complete": false,
2026-06-07T23:26:20.9715696Z           "evidence": []
2026-06-07T23:26:20.9715783Z         }
2026-06-07T23:26:20.9715869Z       }
2026-06-07T23:26:20.9715954Z     },
2026-06-07T23:26:20.9716035Z     {
2026-06-07T23:26:20.9716141Z       "id": "REQ-INSTALL-4",
2026-06-07T23:26:20.9716749Z       "title": "Adapter registration lifecycle: spt adapter add (--github, manifest-first, install-is-first-update) + soft-deregister remove + optional manifest uninstall template; node-local registered-adapter set self-update ripples over",
2026-06-07T23:26:20.9716858Z       "requiredStages": [
2026-06-07T23:26:20.9717038Z         "impl",
2026-06-07T23:26:20.9717124Z         "unit"
2026-06-07T23:26:20.9717210Z       ],
2026-06-07T23:26:20.9717300Z       "stages": {
2026-06-07T23:26:20.9717395Z         "doc": {
2026-06-07T23:26:20.9717496Z           "complete": false,
2026-06-07T23:26:20.9717591Z           "evidence": []
2026-06-07T23:26:20.9717677Z         },
2026-06-07T23:26:20.9717763Z         "impl": {
2026-06-07T23:26:20.9717858Z           "complete": true,
2026-06-07T23:26:20.9717948Z           "evidence": [
2026-06-07T23:26:20.9718035Z             {
2026-06-07T23:26:20.9718173Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-07T23:26:20.9718384Z               "line": 154
2026-06-07T23:26:20.9718473Z             },
2026-06-07T23:26:20.9718554Z             {
2026-06-07T23:26:20.9718684Z               "path": "crates/spt-runtime/src/registry.rs",
2026-06-07T23:26:20.9718859Z               "line": 29
2026-06-07T23:26:20.9718950Z             },
2026-06-07T23:26:20.9719046Z             {
2026-06-07T23:26:20.9719169Z               "path": "crates/spt-runtime/src/registry.rs",
2026-06-07T23:26:20.9719265Z               "line": 117
2026-06-07T23:26:20.9719347Z             },
2026-06-07T23:26:20.9719436Z             {
2026-06-07T23:26:20.9719554Z               "path": "crates/spt-runtime/src/registry.rs",
2026-06-07T23:26:20.9719650Z               "line": 161
2026-06-07T23:26:20.9719736Z             },
2026-06-07T23:26:20.9719817Z             {
2026-06-07T23:26:20.9719936Z               "path": "crates/spt-runtime/src/registry.rs",
2026-06-07T23:26:20.9720028Z               "line": 191
2026-06-07T23:26:20.9720113Z             },
2026-06-07T23:26:20.9720207Z             {
2026-06-07T23:26:20.9720323Z               "path": "crates/spt-runtime/src/registry.rs",
2026-06-07T23:26:20.9720418Z               "line": 223
2026-06-07T23:26:20.9720503Z             },
2026-06-07T23:26:20.9720600Z             {
2026-06-07T23:26:20.9720704Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9720804Z               "line": 3414
2026-06-07T23:26:20.9720889Z             }
2026-06-07T23:26:20.9720971Z           ]
2026-06-07T23:26:20.9721061Z         },
2026-06-07T23:26:20.9721147Z         "int": {
2026-06-07T23:26:20.9721239Z           "complete": false,
2026-06-07T23:26:20.9721338Z           "evidence": []
2026-06-07T23:26:20.9721424Z         },
2026-06-07T23:26:20.9721510Z         "unit": {
2026-06-07T23:26:20.9721606Z           "complete": true,
2026-06-07T23:26:20.9721700Z           "evidence": [
2026-06-07T23:26:20.9721786Z             {
2026-06-07T23:26:20.9721921Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-07T23:26:20.9722014Z               "line": 334
2026-06-07T23:26:20.9722104Z             },
2026-06-07T23:26:20.9722186Z             {
2026-06-07T23:26:20.9722304Z               "path": "crates/spt-runtime/src/registry.rs",
2026-06-07T23:26:20.9722402Z               "line": 269
2026-06-07T23:26:20.9722488Z             },
2026-06-07T23:26:20.9722575Z             {
2026-06-07T23:26:20.9722689Z               "path": "crates/spt-runtime/src/registry.rs",
2026-06-07T23:26:20.9722779Z               "line": 310
2026-06-07T23:26:20.9722866Z             },
2026-06-07T23:26:20.9722951Z             {
2026-06-07T23:26:20.9723074Z               "path": "crates/spt-runtime/src/registry.rs",
2026-06-07T23:26:20.9723161Z               "line": 330
2026-06-07T23:26:20.9723256Z             },
2026-06-07T23:26:20.9723337Z             {
2026-06-07T23:26:20.9723447Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9723534Z               "line": 4977
2026-06-07T23:26:20.9723629Z             }
2026-06-07T23:26:20.9723718Z           ]
2026-06-07T23:26:20.9723805Z         }
2026-06-07T23:26:20.9723895Z       }
2026-06-07T23:26:20.9723976Z     },
2026-06-07T23:26:20.9724062Z     {
2026-06-07T23:26:20.9724158Z       "id": "REQ-INSTALL-5",
2026-06-07T23:26:20.9724624Z       "title": "Non-interactive install path: the canonical one-liner doubles as every adapter's pack-in on-demand install (no second mechanism); sha256-verified fetch; user-PATH registration",
2026-06-07T23:26:20.9724728Z       "requiredStages": [
2026-06-07T23:26:20.9724814Z         "impl",
2026-06-07T23:26:20.9724903Z         "int"
2026-06-07T23:26:20.9724983Z       ],
2026-06-07T23:26:20.9725074Z       "stages": {
2026-06-07T23:26:20.9725165Z         "doc": {
2026-06-07T23:26:20.9725264Z           "complete": false,
2026-06-07T23:26:20.9725355Z           "evidence": []
2026-06-07T23:26:20.9725442Z         },
2026-06-07T23:26:20.9725528Z         "impl": {
2026-06-07T23:26:20.9725622Z           "complete": true,
2026-06-07T23:26:20.9725713Z           "evidence": [
2026-06-07T23:26:20.9725880Z             {
2026-06-07T23:26:20.9725989Z               "path": "installer/install.ps1",
2026-06-07T23:26:20.9726081Z               "line": 5
2026-06-07T23:26:20.9726166Z             },
2026-06-07T23:26:20.9726319Z             {
2026-06-07T23:26:20.9726429Z               "path": "installer/install.sh",
2026-06-07T23:26:20.9726524Z               "line": 6
2026-06-07T23:26:20.9726610Z             }
2026-06-07T23:26:20.9726692Z           ]
2026-06-07T23:26:20.9726781Z         },
2026-06-07T23:26:20.9726867Z         "int": {
2026-06-07T23:26:20.9727050Z           "complete": true,
2026-06-07T23:26:20.9727138Z           "evidence": [
2026-06-07T23:26:20.9727228Z             {
2026-06-07T23:26:20.9727348Z               "path": "crates/spt/tests/oneliner_e2e.rs",
2026-06-07T23:26:20.9727436Z               "line": 22
2026-06-07T23:26:20.9727522Z             }
2026-06-07T23:26:20.9727603Z           ]
2026-06-07T23:26:20.9727689Z         },
2026-06-07T23:26:20.9727775Z         "unit": {
2026-06-07T23:26:20.9727879Z           "complete": false,
2026-06-07T23:26:20.9727970Z           "evidence": []
2026-06-07T23:26:20.9728056Z         }
2026-06-07T23:26:20.9728146Z       }
2026-06-07T23:26:20.9728232Z     },
2026-06-07T23:26:20.9728323Z     {
2026-06-07T23:26:20.9728418Z       "id": "REQ-INSTALL-6",
2026-06-07T23:26:20.9729681Z       "title": "Linux elevation install leg: install.sh symlinks the binary into a sudo-reachable path (/usr/local/bin; graceful print-the-one-liner when unelevated) so sudo spt resolves; first sudo spt detects elevation and prompts ONCE for the default user account — thereafter any elevated daemon launch runs daemon + state under that account, never root (KH 5.7 interplay verified) (M8 decision 8)",
2026-06-07T23:26:20.9729787Z       "requiredStages": [
2026-06-07T23:26:20.9729874Z         "impl",
2026-06-07T23:26:20.9729963Z         "unit"
2026-06-07T23:26:20.9730043Z       ],
2026-06-07T23:26:20.9730133Z       "stages": {
2026-06-07T23:26:20.9730229Z         "doc": {
2026-06-07T23:26:20.9730320Z           "complete": false,
2026-06-07T23:26:20.9730415Z           "evidence": []
2026-06-07T23:26:20.9730496Z         },
2026-06-07T23:26:20.9730592Z         "impl": {
2026-06-07T23:26:20.9730682Z           "complete": true,
2026-06-07T23:26:20.9730782Z           "evidence": [
2026-06-07T23:26:20.9730864Z             {
2026-06-07T23:26:20.9730988Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-07T23:26:20.9731082Z               "line": 59
2026-06-07T23:26:20.9731170Z             },
2026-06-07T23:26:20.9731259Z             {
2026-06-07T23:26:20.9731373Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-07T23:26:20.9731469Z               "line": 365
2026-06-07T23:26:20.9731555Z             },
2026-06-07T23:26:20.9731640Z             {
2026-06-07T23:26:20.9731765Z               "path": "crates/spt-daemon/src/deelevate.rs",
2026-06-07T23:26:20.9731856Z               "line": 138
2026-06-07T23:26:20.9731941Z             },
2026-06-07T23:26:20.9732031Z             {
2026-06-07T23:26:20.9732151Z               "path": "crates/spt-daemon/src/deelevate.rs",
2026-06-07T23:26:20.9732246Z               "line": 223
2026-06-07T23:26:20.9732332Z             },
2026-06-07T23:26:20.9732424Z             {
2026-06-07T23:26:20.9732533Z               "path": "installer/install.sh",
2026-06-07T23:26:20.9732626Z               "line": 104
2026-06-07T23:26:20.9732712Z             }
2026-06-07T23:26:20.9732803Z           ]
2026-06-07T23:26:20.9732892Z         },
2026-06-07T23:26:20.9732976Z         "int": {
2026-06-07T23:26:20.9733073Z           "complete": false,
2026-06-07T23:26:20.9733159Z           "evidence": []
2026-06-07T23:26:20.9733249Z         },
2026-06-07T23:26:20.9735829Z         "unit": {
2026-06-07T23:26:20.9735959Z           "complete": true,
2026-06-07T23:26:20.9736054Z           "evidence": [
2026-06-07T23:26:20.9736206Z             {
2026-06-07T23:26:20.9736346Z               "path": "crates/spt-daemon/src/deelevate.rs",
2026-06-07T23:26:20.9736674Z               "line": 673
2026-06-07T23:26:20.9736755Z             }
2026-06-07T23:26:20.9736845Z           ]
2026-06-07T23:26:20.9736927Z         }
2026-06-07T23:26:20.9737117Z       }
2026-06-07T23:26:20.9737208Z     },
2026-06-07T23:26:20.9737446Z     {
2026-06-07T23:26:20.9737552Z       "id": "REQ-INSTALL-7",
2026-06-07T23:26:20.9738749Z       "title": "Windows inbound reachability: the elevated install leg registers the inbound-UDP firewall rule (New-NetFirewallRule); the daemon self-detects blocked inbound and renders it as the no-connection state in subnet status + the coming-online banner (covers user-scope installs that skip the elevated leg — never a silent NO_SEED_HOLDER dead-end) (M8 root cause 3)",
2026-06-07T23:26:20.9738860Z       "requiredStages": [
2026-06-07T23:26:20.9738945Z         "impl"
2026-06-07T23:26:20.9739030Z       ],
2026-06-07T23:26:20.9739121Z       "stages": {
2026-06-07T23:26:20.9739213Z         "doc": {
2026-06-07T23:26:20.9739308Z           "complete": false,
2026-06-07T23:26:20.9739407Z           "evidence": []
2026-06-07T23:26:20.9739494Z         },
2026-06-07T23:26:20.9739579Z         "impl": {
2026-06-07T23:26:20.9739679Z           "complete": true,
2026-06-07T23:26:20.9739766Z           "evidence": [
2026-06-07T23:26:20.9739861Z             {
2026-06-07T23:26:20.9739970Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9740070Z               "line": 2400
2026-06-07T23:26:20.9740157Z             },
2026-06-07T23:26:20.9740236Z             {
2026-06-07T23:26:20.9740352Z               "path": "installer/install.ps1",
2026-06-07T23:26:20.9740438Z               "line": 157
2026-06-07T23:26:20.9740523Z             }
2026-06-07T23:26:20.9740603Z           ]
2026-06-07T23:26:20.9740693Z         },
2026-06-07T23:26:20.9740785Z         "int": {
2026-06-07T23:26:20.9740875Z           "complete": false,
2026-06-07T23:26:20.9740970Z           "evidence": []
2026-06-07T23:26:20.9741051Z         },
2026-06-07T23:26:20.9741138Z         "unit": {
2026-06-07T23:26:20.9741233Z           "complete": false,
2026-06-07T23:26:20.9741327Z           "evidence": []
2026-06-07T23:26:20.9741420Z         }
2026-06-07T23:26:20.9741505Z       }
2026-06-07T23:26:20.9741590Z     },
2026-06-07T23:26:20.9741671Z     {
2026-06-07T23:26:20.9741786Z       "id": "REQ-INSTALL-8",
2026-06-07T23:26:20.9742792Z       "title": "OS-service registration (REQ-INSTALL-1's deferred third leg): Linux systemd USER service + loginctl enable-linger (linger rides the elevated install leg; daemon starts at boot pre-login, user universe per KH 5.7, systemctl --user managed); Windows scheduled task at-logon (interactive session, no stored credentials); a node is reachable after reboot without any manual spt invocation (M8 decision 17)",
2026-06-07T23:26:20.9742897Z       "requiredStages": [
2026-06-07T23:26:20.9742989Z         "impl"
2026-06-07T23:26:20.9743074Z       ],
2026-06-07T23:26:20.9743163Z       "stages": {
2026-06-07T23:26:20.9743253Z         "doc": {
2026-06-07T23:26:20.9743344Z           "complete": false,
2026-06-07T23:26:20.9743443Z           "evidence": []
2026-06-07T23:26:20.9743522Z         },
2026-06-07T23:26:20.9743618Z         "impl": {
2026-06-07T23:26:20.9743710Z           "complete": true,
2026-06-07T23:26:20.9743804Z           "evidence": [
2026-06-07T23:26:20.9743889Z             {
2026-06-07T23:26:20.9744000Z               "path": "installer/install.ps1",
2026-06-07T23:26:20.9744091Z               "line": 184
2026-06-07T23:26:20.9744175Z             },
2026-06-07T23:26:20.9744262Z             {
2026-06-07T23:26:20.9744363Z               "path": "installer/install.sh",
2026-06-07T23:26:20.9744467Z               "line": 121
2026-06-07T23:26:20.9744553Z             }
2026-06-07T23:26:20.9744639Z           ]
2026-06-07T23:26:20.9744720Z         },
2026-06-07T23:26:20.9744805Z         "int": {
2026-06-07T23:26:20.9744901Z           "complete": false,
2026-06-07T23:26:20.9744987Z           "evidence": []
2026-06-07T23:26:20.9745087Z         },
2026-06-07T23:26:20.9745173Z         "unit": {
2026-06-07T23:26:20.9745377Z           "complete": false,
2026-06-07T23:26:20.9745473Z           "evidence": []
2026-06-07T23:26:20.9745556Z         }
2026-06-07T23:26:20.9745645Z       }
2026-06-07T23:26:20.9745725Z     },
2026-06-07T23:26:20.9745896Z     {
2026-06-07T23:26:20.9745996Z       "id": "REQ-MANIFEST-1",
2026-06-07T23:26:20.9746185Z       "title": "Per-adapter manifest with adapter_name and min_spt_core_version",
2026-06-07T23:26:20.9746271Z       "requiredStages": [
2026-06-07T23:26:20.9746357Z         "doc",
2026-06-07T23:26:20.9746446Z         "impl",
2026-06-07T23:26:20.9746528Z         "unit"
2026-06-07T23:26:20.9746614Z       ],
2026-06-07T23:26:20.9746709Z       "stages": {
2026-06-07T23:26:20.9746800Z         "doc": {
2026-06-07T23:26:20.9746896Z           "complete": true,
2026-06-07T23:26:20.9747076Z           "evidence": [
2026-06-07T23:26:20.9747177Z             {
2026-06-07T23:26:20.9747281Z               "path": "docs/MANIFEST.md",
2026-06-07T23:26:20.9747371Z               "line": 19
2026-06-07T23:26:20.9747459Z             }
2026-06-07T23:26:20.9747550Z           ]
2026-06-07T23:26:20.9747826Z         },
2026-06-07T23:26:20.9747911Z         "impl": {
2026-06-07T23:26:20.9748006Z           "complete": true,
2026-06-07T23:26:20.9748093Z           "evidence": [
2026-06-07T23:26:20.9748179Z             {
2026-06-07T23:26:20.9748301Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:20.9748400Z               "line": 18
2026-06-07T23:26:20.9748487Z             }
2026-06-07T23:26:20.9748566Z           ]
2026-06-07T23:26:20.9748656Z         },
2026-06-07T23:26:20.9748737Z         "int": {
2026-06-07T23:26:20.9748828Z           "complete": false,
2026-06-07T23:26:20.9748923Z           "evidence": []
2026-06-07T23:26:20.9749047Z         },
2026-06-07T23:26:20.9749134Z         "unit": {
2026-06-07T23:26:20.9749224Z           "complete": true,
2026-06-07T23:26:20.9749314Z           "evidence": [
2026-06-07T23:26:20.9749400Z             {
2026-06-07T23:26:20.9749529Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:20.9749624Z               "line": 746
2026-06-07T23:26:20.9749715Z             },
2026-06-07T23:26:20.9749801Z             {
2026-06-07T23:26:20.9749924Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:20.9750025Z               "line": 860
2026-06-07T23:26:20.9750106Z             },
2026-06-07T23:26:20.9750196Z             {
2026-06-07T23:26:20.9750311Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:20.9750407Z               "line": 872
2026-06-07T23:26:20.9750496Z             },
2026-06-07T23:26:20.9750582Z             {
2026-06-07T23:26:20.9750698Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:20.9750788Z               "line": 883
2026-06-07T23:26:20.9750878Z             },
2026-06-07T23:26:20.9750960Z             {
2026-06-07T23:26:20.9751079Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:20.9751168Z               "line": 900
2026-06-07T23:26:20.9751258Z             },
2026-06-07T23:26:20.9751345Z             {
2026-06-07T23:26:20.9751454Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:20.9751549Z               "line": 914
2026-06-07T23:26:20.9751635Z             },
2026-06-07T23:26:20.9751722Z             {
2026-06-07T23:26:20.9751840Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:20.9751926Z               "line": 929
2026-06-07T23:26:20.9752012Z             },
2026-06-07T23:26:20.9752098Z             {
2026-06-07T23:26:20.9752221Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:20.9752309Z               "line": 944
2026-06-07T23:26:20.9752398Z             },
2026-06-07T23:26:20.9752484Z             {
2026-06-07T23:26:20.9752604Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:20.9752699Z               "line": 959
2026-06-07T23:26:20.9752780Z             },
2026-06-07T23:26:20.9752870Z             {
2026-06-07T23:26:20.9753104Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:20.9753200Z               "line": 970
2026-06-07T23:26:20.9753286Z             }
2026-06-07T23:26:20.9753366Z           ]
2026-06-07T23:26:20.9753544Z         }
2026-06-07T23:26:20.9753629Z       }
2026-06-07T23:26:20.9753714Z     },
2026-06-07T23:26:20.9753794Z     {
2026-06-07T23:26:20.9753895Z       "id": "REQ-MIGRATE-1",
2026-06-07T23:26:20.9754069Z       "title": "Auto-detect and migrate a legacy claude_skill_owl install",
2026-06-07T23:26:20.9754164Z       "requiredStages": [],
2026-06-07T23:26:20.9754255Z       "stages": {
2026-06-07T23:26:20.9754341Z         "doc": {
2026-06-07T23:26:20.9754435Z           "complete": false,
2026-06-07T23:26:20.9754527Z           "evidence": []
2026-06-07T23:26:20.9754618Z         },
2026-06-07T23:26:20.9754707Z         "impl": {
2026-06-07T23:26:20.9754798Z           "complete": false,
2026-06-07T23:26:20.9754889Z           "evidence": []
2026-06-07T23:26:20.9755132Z         },
2026-06-07T23:26:20.9755232Z         "int": {
2026-06-07T23:26:20.9755323Z           "complete": false,
2026-06-07T23:26:20.9755418Z           "evidence": []
2026-06-07T23:26:20.9755505Z         },
2026-06-07T23:26:20.9755585Z         "unit": {
2026-06-07T23:26:20.9755685Z           "complete": false,
2026-06-07T23:26:20.9755776Z           "evidence": []
2026-06-07T23:26:20.9755881Z         }
2026-06-07T23:26:20.9755966Z       }
2026-06-07T23:26:20.9756042Z     },
2026-06-07T23:26:20.9756130Z     {
2026-06-07T23:26:20.9756224Z       "id": "REQ-MSG-1",
2026-06-07T23:26:20.9756663Z       "title": "Local message delivery: TCP-first to a registered address, spool fallback when offline; id->address via registry (stale-clean first); reply routing (__REPLY_TO__)",
2026-06-07T23:26:20.9756764Z       "requiredStages": [
2026-06-07T23:26:20.9756846Z         "impl",
2026-06-07T23:26:20.9756936Z         "unit",
2026-06-07T23:26:20.9757098Z         "int"
2026-06-07T23:26:20.9757170Z       ],
2026-06-07T23:26:20.9757260Z       "stages": {
2026-06-07T23:26:20.9757341Z         "doc": {
2026-06-07T23:26:20.9757437Z           "complete": false,
2026-06-07T23:26:20.9757532Z           "evidence": []
2026-06-07T23:26:20.9757617Z         },
2026-06-07T23:26:20.9757709Z         "impl": {
2026-06-07T23:26:20.9757804Z           "complete": true,
2026-06-07T23:26:20.9757899Z           "evidence": [
2026-06-07T23:26:20.9757985Z             {
2026-06-07T23:26:20.9758110Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-07T23:26:20.9758199Z               "line": 28
2026-06-07T23:26:20.9758290Z             },
2026-06-07T23:26:20.9758377Z             {
2026-06-07T23:26:20.9758499Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-07T23:26:20.9758585Z               "line": 94
2026-06-07T23:26:20.9758677Z             },
2026-06-07T23:26:20.9758758Z             {
2026-06-07T23:26:20.9758875Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-07T23:26:20.9758970Z               "line": 127
2026-06-07T23:26:20.9759061Z             },
2026-06-07T23:26:20.9759145Z             {
2026-06-07T23:26:20.9759259Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-07T23:26:20.9759350Z               "line": 149
2026-06-07T23:26:20.9759432Z             },
2026-06-07T23:26:20.9759526Z             {
2026-06-07T23:26:20.9759636Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-07T23:26:20.9759727Z               "line": 174
2026-06-07T23:26:20.9759812Z             },
2026-06-07T23:26:20.9759893Z             {
2026-06-07T23:26:20.9760013Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-07T23:26:20.9760099Z               "line": 18
2026-06-07T23:26:20.9760189Z             },
2026-06-07T23:26:20.9760275Z             {
2026-06-07T23:26:20.9760380Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-07T23:26:20.9760479Z               "line": 13
2026-06-07T23:26:20.9760561Z             },
2026-06-07T23:26:20.9760648Z             {
2026-06-07T23:26:20.9760756Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-07T23:26:20.9760953Z               "line": 61
2026-06-07T23:26:20.9761042Z             },
2026-06-07T23:26:20.9761128Z             {
2026-06-07T23:26:20.9761249Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-07T23:26:20.9761423Z               "line": 10
2026-06-07T23:26:20.9761510Z             }
2026-06-07T23:26:20.9761592Z           ]
2026-06-07T23:26:20.9761676Z         },
2026-06-07T23:26:20.9761766Z         "int": {
2026-06-07T23:26:20.9761862Z           "complete": true,
2026-06-07T23:26:20.9761953Z           "evidence": [
2026-06-07T23:26:20.9762033Z             {
2026-06-07T23:26:20.9762177Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-07T23:26:20.9762263Z               "line": 9
2026-06-07T23:26:20.9762348Z             },
2026-06-07T23:26:20.9762433Z             {
2026-06-07T23:26:20.9762568Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-07T23:26:20.9762658Z               "line": 70
2026-06-07T23:26:20.9762753Z             },
2026-06-07T23:26:20.9762840Z             {
2026-06-07T23:26:20.9762968Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-07T23:26:20.9763063Z               "line": 129
2026-06-07T23:26:20.9763149Z             }
2026-06-07T23:26:20.9763235Z           ]
2026-06-07T23:26:20.9763321Z         },
2026-06-07T23:26:20.9763402Z         "unit": {
2026-06-07T23:26:20.9763494Z           "complete": true,
2026-06-07T23:26:20.9763588Z           "evidence": [
2026-06-07T23:26:20.9763669Z             {
2026-06-07T23:26:20.9763784Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-07T23:26:20.9763875Z               "line": 203
2026-06-07T23:26:20.9763959Z             },
2026-06-07T23:26:20.9764046Z             {
2026-06-07T23:26:20.9764157Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-07T23:26:20.9764245Z               "line": 232
2026-06-07T23:26:20.9764335Z             },
2026-06-07T23:26:20.9764421Z             {
2026-06-07T23:26:20.9764558Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-07T23:26:20.9764811Z               "line": 277
2026-06-07T23:26:20.9764906Z             },
2026-06-07T23:26:20.9765000Z             {
2026-06-07T23:26:20.9765267Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-07T23:26:20.9765377Z               "line": 300
2026-06-07T23:26:20.9765459Z             },
2026-06-07T23:26:20.9765530Z             {
2026-06-07T23:26:20.9765649Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-07T23:26:20.9765741Z               "line": 324
2026-06-07T23:26:20.9765854Z             },
2026-06-07T23:26:20.9765940Z             {
2026-06-07T23:26:20.9766056Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-07T23:26:20.9766145Z               "line": 203
2026-06-07T23:26:20.9766231Z             },
2026-06-07T23:26:20.9766312Z             {
2026-06-07T23:26:20.9766422Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-07T23:26:20.9766512Z               "line": 236
2026-06-07T23:26:20.9766612Z             },
2026-06-07T23:26:20.9766709Z             {
2026-06-07T23:26:20.9766845Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-07T23:26:20.9766935Z               "line": 250
2026-06-07T23:26:20.9767116Z             },
2026-06-07T23:26:20.9767200Z             {
2026-06-07T23:26:20.9767305Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-07T23:26:20.9767406Z               "line": 262
2026-06-07T23:26:20.9767496Z             },
2026-06-07T23:26:20.9767581Z             {
2026-06-07T23:26:20.9767692Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-07T23:26:20.9767782Z               "line": 158
2026-06-07T23:26:20.9767867Z             },
2026-06-07T23:26:20.9767944Z             {
2026-06-07T23:26:20.9768045Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-07T23:26:20.9768130Z               "line": 241
2026-06-07T23:26:20.9768206Z             },
2026-06-07T23:26:20.9768293Z             {
2026-06-07T23:26:20.9768506Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-07T23:26:20.9768599Z               "line": 68
2026-06-07T23:26:20.9768679Z             },
2026-06-07T23:26:20.9768764Z             {
2026-06-07T23:26:20.9768869Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-07T23:26:20.9769050Z               "line": 77
2026-06-07T23:26:20.9769136Z             },
2026-06-07T23:26:20.9769228Z             {
2026-06-07T23:26:20.9769332Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-07T23:26:20.9769426Z               "line": 83
2026-06-07T23:26:20.9769511Z             },
2026-06-07T23:26:20.9769597Z             {
2026-06-07T23:26:20.9769705Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-07T23:26:20.9769795Z               "line": 102
2026-06-07T23:26:20.9769882Z             }
2026-06-07T23:26:20.9769963Z           ]
2026-06-07T23:26:20.9770044Z         }
2026-06-07T23:26:20.9770129Z       }
2026-06-07T23:26:20.9770210Z     },
2026-06-07T23:26:20.9770296Z     {
2026-06-07T23:26:20.9770391Z       "id": "REQ-MSG-2",
2026-06-07T23:26:20.9770659Z       "title": "spt binary CLI surface: send/ring/ready(+--once)/list/stop/whoami, stable arg shapes + exit codes",
2026-06-07T23:26:20.9770753Z       "requiredStages": [
2026-06-07T23:26:20.9770845Z         "impl",
2026-06-07T23:26:20.9770945Z         "unit"
2026-06-07T23:26:20.9771035Z       ],
2026-06-07T23:26:20.9771126Z       "stages": {
2026-06-07T23:26:20.9771217Z         "doc": {
2026-06-07T23:26:20.9771311Z           "complete": false,
2026-06-07T23:26:20.9771402Z           "evidence": []
2026-06-07T23:26:20.9771489Z         },
2026-06-07T23:26:20.9771579Z         "impl": {
2026-06-07T23:26:20.9771669Z           "complete": true,
2026-06-07T23:26:20.9771765Z           "evidence": [
2026-06-07T23:26:20.9771852Z             {
2026-06-07T23:26:20.9771959Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9772056Z               "line": 11
2026-06-07T23:26:20.9772143Z             },
2026-06-07T23:26:20.9772232Z             {
2026-06-07T23:26:20.9772341Z               "path": "crates/spt/src/main.rs",
2026-06-07T23:26:20.9772431Z               "line": 8
2026-06-07T23:26:20.9772518Z             }
2026-06-07T23:26:20.9772603Z           ]
2026-06-07T23:26:20.9772688Z         },
2026-06-07T23:26:20.9772785Z         "int": {
2026-06-07T23:26:20.9772881Z           "complete": false,
2026-06-07T23:26:20.9772970Z           "evidence": []
2026-06-07T23:26:20.9773061Z         },
2026-06-07T23:26:20.9773152Z         "unit": {
2026-06-07T23:26:20.9773251Z           "complete": true,
2026-06-07T23:26:20.9773341Z           "evidence": [
2026-06-07T23:26:20.9773429Z             {
2026-06-07T23:26:20.9773538Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9773623Z               "line": 4495
2026-06-07T23:26:20.9773719Z             },
2026-06-07T23:26:20.9773805Z             {
2026-06-07T23:26:20.9773909Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9773995Z               "line": 4544
2026-06-07T23:26:20.9774092Z             },
2026-06-07T23:26:20.9774181Z             {
2026-06-07T23:26:20.9774277Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9774378Z               "line": 4567
2026-06-07T23:26:20.9774463Z             },
2026-06-07T23:26:20.9774553Z             {
2026-06-07T23:26:20.9774650Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9774745Z               "line": 5997
2026-06-07T23:26:20.9774834Z             },
2026-06-07T23:26:20.9774919Z             {
2026-06-07T23:26:20.9775024Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9775113Z               "line": 6006
2026-06-07T23:26:20.9775203Z             },
2026-06-07T23:26:20.9775289Z             {
2026-06-07T23:26:20.9775395Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9775489Z               "line": 6020
2026-06-07T23:26:20.9775574Z             }
2026-06-07T23:26:20.9775662Z           ]
2026-06-07T23:26:20.9775752Z         }
2026-06-07T23:26:20.9775837Z       }
2026-06-07T23:26:20.9776009Z     },
2026-06-07T23:26:20.9776100Z     {
2026-06-07T23:26:20.9776190Z       "id": "REQ-MSG-3",
2026-06-07T23:26:20.9776558Z       "title": "Ready-agent lifecycle: register perch (info.json + listener + registry address) on ready, drain spooled backlog on startup, clean teardown",
2026-06-07T23:26:20.9776729Z       "requiredStages": [
2026-06-07T23:26:20.9776810Z         "impl",
2026-06-07T23:26:20.9776901Z         "unit",
2026-06-07T23:26:20.9777082Z         "int"
2026-06-07T23:26:20.9777167Z       ],
2026-06-07T23:26:20.9777255Z       "stages": {
2026-06-07T23:26:20.9777344Z         "doc": {
2026-06-07T23:26:20.9777438Z           "complete": false,
2026-06-07T23:26:20.9777538Z           "evidence": []
2026-06-07T23:26:20.9777624Z         },
2026-06-07T23:26:20.9777718Z         "impl": {
2026-06-07T23:26:20.9777807Z           "complete": true,
2026-06-07T23:26:20.9777899Z           "evidence": [
2026-06-07T23:26:20.9777985Z             {
2026-06-07T23:26:20.9778103Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-07T23:26:20.9778199Z               "line": 19
2026-06-07T23:26:20.9778295Z             },
2026-06-07T23:26:20.9778380Z             {
2026-06-07T23:26:20.9778494Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-07T23:26:20.9778600Z               "line": 21
2026-06-07T23:26:20.9778685Z             },
2026-06-07T23:26:20.9778776Z             {
2026-06-07T23:26:20.9778881Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-07T23:26:20.9778976Z               "line": 48
2026-06-07T23:26:20.9779071Z             },
2026-06-07T23:26:20.9779159Z             {
2026-06-07T23:26:20.9779267Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-07T23:26:20.9779358Z               "line": 142
2026-06-07T23:26:20.9779448Z             }
2026-06-07T23:26:20.9779530Z           ]
2026-06-07T23:26:20.9779620Z         },
2026-06-07T23:26:20.9779710Z         "int": {
2026-06-07T23:26:20.9779807Z           "complete": true,
2026-06-07T23:26:20.9779902Z           "evidence": [
2026-06-07T23:26:20.9779986Z             {
2026-06-07T23:26:20.9780129Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-07T23:26:20.9780219Z               "line": 10
2026-06-07T23:26:20.9780308Z             },
2026-06-07T23:26:20.9780407Z             {
2026-06-07T23:26:20.9780538Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-07T23:26:20.9780632Z               "line": 70
2026-06-07T23:26:20.9780718Z             }
2026-06-07T23:26:20.9780805Z           ]
2026-06-07T23:26:20.9780891Z         },
2026-06-07T23:26:20.9780979Z         "unit": {
2026-06-07T23:26:20.9781076Z           "complete": true,
2026-06-07T23:26:20.9781167Z           "evidence": [
2026-06-07T23:26:20.9781257Z             {
2026-06-07T23:26:20.9781366Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-07T23:26:20.9781462Z               "line": 196
2026-06-07T23:26:20.9781548Z             },
2026-06-07T23:26:20.9781633Z             {
2026-06-07T23:26:20.9781744Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-07T23:26:20.9781843Z               "line": 215
2026-06-07T23:26:20.9781929Z             },
2026-06-07T23:26:20.9782016Z             {
2026-06-07T23:26:20.9782135Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-07T23:26:20.9782230Z               "line": 237
2026-06-07T23:26:20.9782315Z             }
2026-06-07T23:26:20.9782402Z           ]
2026-06-07T23:26:20.9782487Z         }
2026-06-07T23:26:20.9782577Z       }
2026-06-07T23:26:20.9782660Z     },
2026-06-07T23:26:20.9782746Z     {
2026-06-07T23:26:20.9782834Z       "id": "REQ-MSG-4",
2026-06-07T23:26:20.9783655Z       "title": "Listener stream stdout emits EVENT envelope lines (sister-format, ADR-0001): parse the __REPLY_TO__ frame, pass pre-formed typed envelopes through verbatim (no double-wrap), compose <EVENT type=\"msg\" from=…> otherwise, chunk oversized lines into EVENT-PART",
2026-06-07T23:26:20.9783760Z       "requiredStages": [
2026-06-07T23:26:20.9783849Z         "impl",
2026-06-07T23:26:20.9784045Z         "unit",
2026-06-07T23:26:20.9784136Z         "int"
2026-06-07T23:26:20.9784221Z       ],
2026-06-07T23:26:20.9784318Z       "stages": {
2026-06-07T23:26:20.9784403Z         "doc": {
2026-06-07T23:26:20.9784498Z           "complete": false,
2026-06-07T23:26:20.9784675Z           "evidence": []
2026-06-07T23:26:20.9784765Z         },
2026-06-07T23:26:20.9784851Z         "impl": {
2026-06-07T23:26:20.9784948Z           "complete": true,
2026-06-07T23:26:20.9785041Z           "evidence": [
2026-06-07T23:26:20.9785277Z             {
2026-06-07T23:26:20.9785403Z               "path": "crates/spt-msg/src/emit.rs",
2026-06-07T23:26:20.9785488Z               "line": 16
2026-06-07T23:26:20.9785580Z             },
2026-06-07T23:26:20.9785664Z             {
2026-06-07T23:26:20.9785773Z               "path": "crates/spt-msg/src/emit.rs",
2026-06-07T23:26:20.9785854Z               "line": 25
2026-06-07T23:26:20.9785931Z             },
2026-06-07T23:26:20.9786021Z             {
2026-06-07T23:26:20.9786125Z               "path": "crates/spt-msg/src/emit.rs",
2026-06-07T23:26:20.9786255Z               "line": 47
2026-06-07T23:26:20.9786345Z             },
2026-06-07T23:26:20.9786431Z             {
2026-06-07T23:26:20.9786574Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:20.9786674Z               "line": 363
2026-06-07T23:26:20.9786769Z             },
2026-06-07T23:26:20.9786851Z             {
2026-06-07T23:26:20.9787041Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9787132Z               "line": 1806
2026-06-07T23:26:20.9787218Z             }
2026-06-07T23:26:20.9787308Z           ]
2026-06-07T23:26:20.9787394Z         },
2026-06-07T23:26:20.9787486Z         "int": {
2026-06-07T23:26:20.9787580Z           "complete": true,
2026-06-07T23:26:20.9787675Z           "evidence": [
2026-06-07T23:26:20.9787767Z             {
2026-06-07T23:26:20.9787895Z               "path": "crates/spt/tests/quickstart_e2e.rs",
2026-06-07T23:26:20.9787985Z               "line": 93
2026-06-07T23:26:20.9788074Z             },
2026-06-07T23:26:20.9788161Z             {
2026-06-07T23:26:20.9788282Z               "path": "crates/spt/tests/quickstart_e2e.rs",
2026-06-07T23:26:20.9788372Z               "line": 123
2026-06-07T23:26:20.9788464Z             }
2026-06-07T23:26:20.9788554Z           ]
2026-06-07T23:26:20.9788640Z         },
2026-06-07T23:26:20.9788721Z         "unit": {
2026-06-07T23:26:20.9788817Z           "complete": true,
2026-06-07T23:26:20.9788907Z           "evidence": [
2026-06-07T23:26:20.9789001Z             {
2026-06-07T23:26:20.9789108Z               "path": "crates/spt-msg/src/emit.rs",
2026-06-07T23:26:20.9789198Z               "line": 62
2026-06-07T23:26:20.9789288Z             },
2026-06-07T23:26:20.9789370Z             {
2026-06-07T23:26:20.9789479Z               "path": "crates/spt-msg/src/emit.rs",
2026-06-07T23:26:20.9789560Z               "line": 73
2026-06-07T23:26:20.9789645Z             },
2026-06-07T23:26:20.9789728Z             {
2026-06-07T23:26:20.9789846Z               "path": "crates/spt-msg/src/emit.rs",
2026-06-07T23:26:20.9789946Z               "line": 84
2026-06-07T23:26:20.9790048Z             },
2026-06-07T23:26:20.9790142Z             {
2026-06-07T23:26:20.9790242Z               "path": "crates/spt-msg/src/emit.rs",
2026-06-07T23:26:20.9790338Z               "line": 96
2026-06-07T23:26:20.9790424Z             },
2026-06-07T23:26:20.9790518Z             {
2026-06-07T23:26:20.9790627Z               "path": "crates/spt-msg/src/emit.rs",
2026-06-07T23:26:20.9790717Z               "line": 105
2026-06-07T23:26:20.9790807Z             },
2026-06-07T23:26:20.9790887Z             {
2026-06-07T23:26:20.9790997Z               "path": "crates/spt-msg/src/emit.rs",
2026-06-07T23:26:20.9791088Z               "line": 120
2026-06-07T23:26:20.9791173Z             }
2026-06-07T23:26:20.9791263Z           ]
2026-06-07T23:26:20.9791350Z         }
2026-06-07T23:26:20.9791441Z       }
2026-06-07T23:26:20.9791526Z     },
2026-06-07T23:26:20.9791612Z     {
2026-06-07T23:26:20.9791826Z       "id": "REQ-NET-1",
2026-06-07T23:26:20.9792013Z       "title": "WAN messaging first-class, behind default-on net feature flag",
2026-06-07T23:26:20.9792113Z       "requiredStages": [
2026-06-07T23:26:20.9792208Z         "impl",
2026-06-07T23:26:20.9792385Z         "unit",
2026-06-07T23:26:20.9792470Z         "int"
2026-06-07T23:26:20.9792556Z       ],
2026-06-07T23:26:20.9792643Z       "stages": {
2026-06-07T23:26:20.9792732Z         "doc": {
2026-06-07T23:26:20.9792832Z           "complete": false,
2026-06-07T23:26:20.9792924Z           "evidence": []
2026-06-07T23:26:20.9793010Z         },
2026-06-07T23:26:20.9793098Z         "impl": {
2026-06-07T23:26:20.9793191Z           "complete": true,
2026-06-07T23:26:20.9793282Z           "evidence": [
2026-06-07T23:26:20.9793371Z             {
2026-06-07T23:26:20.9793499Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-07T23:26:20.9793590Z               "line": 54
2026-06-07T23:26:20.9793681Z             },
2026-06-07T23:26:20.9793770Z             {
2026-06-07T23:26:20.9793890Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-07T23:26:20.9793976Z               "line": 554
2026-06-07T23:26:20.9794066Z             },
2026-06-07T23:26:20.9794161Z             {
2026-06-07T23:26:20.9794277Z               "path": "crates/spt-daemon/src/wan.rs",
2026-06-07T23:26:20.9794372Z               "line": 69
2026-06-07T23:26:20.9794457Z             },
2026-06-07T23:26:20.9794544Z             {
2026-06-07T23:26:20.9794668Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-07T23:26:20.9794767Z               "line": 65
2026-06-07T23:26:20.9794859Z             },
2026-06-07T23:26:20.9794944Z             {
2026-06-07T23:26:20.9795063Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-07T23:26:20.9795155Z               "line": 127
2026-06-07T23:26:20.9795245Z             },
2026-06-07T23:26:20.9795330Z             {
2026-06-07T23:26:20.9795450Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-07T23:26:20.9795565Z               "line": 143
2026-06-07T23:26:20.9795658Z             },
2026-06-07T23:26:20.9795741Z             {
2026-06-07T23:26:20.9795851Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-07T23:26:20.9795944Z               "line": 158
2026-06-07T23:26:20.9796030Z             },
2026-06-07T23:26:20.9796120Z             {
2026-06-07T23:26:20.9796238Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-07T23:26:20.9796347Z               "line": 235
2026-06-07T23:26:20.9796457Z             },
2026-06-07T23:26:20.9796543Z             {
2026-06-07T23:26:20.9796666Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-07T23:26:20.9796757Z               "line": 270
2026-06-07T23:26:20.9796843Z             },
2026-06-07T23:26:20.9796933Z             {
2026-06-07T23:26:20.9797144Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-07T23:26:20.9797239Z               "line": 276
2026-06-07T23:26:20.9797325Z             },
2026-06-07T23:26:20.9797416Z             {
2026-06-07T23:26:20.9797535Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-07T23:26:20.9797625Z               "line": 282
2026-06-07T23:26:20.9797711Z             },
2026-06-07T23:26:20.9797802Z             {
2026-06-07T23:26:20.9797916Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-07T23:26:20.9798007Z               "line": 298
2026-06-07T23:26:20.9798098Z             },
2026-06-07T23:26:20.9798182Z             {
2026-06-07T23:26:20.9798302Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-07T23:26:20.9798399Z               "line": 318
2026-06-07T23:26:20.9798483Z             },
2026-06-07T23:26:20.9798568Z             {
2026-06-07T23:26:20.9798687Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-07T23:26:20.9798777Z               "line": 35
2026-06-07T23:26:20.9798871Z             },
2026-06-07T23:26:20.9798956Z             {
2026-06-07T23:26:20.9799077Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-07T23:26:20.9799266Z               "line": 85
2026-06-07T23:26:20.9799353Z             },
2026-06-07T23:26:20.9799434Z             {
2026-06-07T23:26:20.9799552Z               "path": "crates/spt-store/src/spool.rs",
2026-06-07T23:26:20.9799739Z               "line": 135
2026-06-07T23:26:20.9799829Z             },
2026-06-07T23:26:20.9799915Z             {
2026-06-07T23:26:20.9800021Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9800116Z               "line": 1654
2026-06-07T23:26:20.9800201Z             },
2026-06-07T23:26:20.9800293Z             {
2026-06-07T23:26:20.9800406Z               "path": "crates/spt/src/wansend.rs",
2026-06-07T23:26:20.9800492Z               "line": 17
2026-06-07T23:26:20.9800578Z             }
2026-06-07T23:26:20.9800665Z           ]
2026-06-07T23:26:20.9800754Z         },
2026-06-07T23:26:20.9800840Z         "int": {
2026-06-07T23:26:20.9800932Z           "complete": true,
2026-06-07T23:26:20.9801026Z           "evidence": [
2026-06-07T23:26:20.9801116Z             {
2026-06-07T23:26:20.9801240Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-07T23:26:20.9801334Z               "line": 330
2026-06-07T23:26:20.9801424Z             },
2026-06-07T23:26:20.9801514Z             {
2026-06-07T23:26:20.9801634Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:20.9801728Z               "line": 603
2026-06-07T23:26:20.9801814Z             },
2026-06-07T23:26:20.9801901Z             {
2026-06-07T23:26:20.9802011Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:20.9802109Z               "line": 876
2026-06-07T23:26:20.9802191Z             }
2026-06-07T23:26:20.9802282Z           ]
2026-06-07T23:26:20.9802368Z         },
2026-06-07T23:26:20.9802453Z         "unit": {
2026-06-07T23:26:20.9802554Z           "complete": true,
2026-06-07T23:26:20.9802644Z           "evidence": [
2026-06-07T23:26:20.9802730Z             {
2026-06-07T23:26:20.9802846Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-07T23:26:20.9802940Z               "line": 610
2026-06-07T23:26:20.9803030Z             },
2026-06-07T23:26:20.9803117Z             {
2026-06-07T23:26:20.9803231Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-07T23:26:20.9803325Z               "line": 645
2026-06-07T23:26:20.9803416Z             },
2026-06-07T23:26:20.9803503Z             {
2026-06-07T23:26:20.9803631Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-07T23:26:20.9803731Z               "line": 803
2026-06-07T23:26:20.9806143Z             },
2026-06-07T23:26:20.9806252Z             {
2026-06-07T23:26:20.9806387Z               "path": "crates/spt-daemon/tests/wanmsg.rs",
2026-06-07T23:26:20.9806486Z               "line": 151
2026-06-07T23:26:20.9806571Z             },
2026-06-07T23:26:20.9806657Z             {
2026-06-07T23:26:20.9806790Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-07T23:26:20.9806878Z               "line": 391
2026-06-07T23:26:20.9807075Z             },
2026-06-07T23:26:20.9807160Z             {
2026-06-07T23:26:20.9807289Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-07T23:26:20.9807380Z               "line": 405
2026-06-07T23:26:20.9807494Z             },
2026-06-07T23:26:20.9807584Z             {
2026-06-07T23:26:20.9807709Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-07T23:26:20.9807804Z               "line": 424
2026-06-07T23:26:20.9807885Z             },
2026-06-07T23:26:20.9807971Z             {
2026-06-07T23:26:20.9808090Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-07T23:26:20.9808180Z               "line": 119
2026-06-07T23:26:20.9808267Z             },
2026-06-07T23:26:20.9808348Z             {
2026-06-07T23:26:20.9808466Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-07T23:26:20.9808557Z               "line": 162
2026-06-07T23:26:20.9808644Z             },
2026-06-07T23:26:20.9808733Z             {
2026-06-07T23:26:20.9808997Z               "path": "crates/spt-store/src/spool.rs",
2026-06-07T23:26:20.9809085Z               "line": 492
2026-06-07T23:26:20.9809170Z             },
2026-06-07T23:26:20.9809262Z             {
2026-06-07T23:26:20.9809383Z               "path": "crates/spt/src/wansend.rs",
2026-06-07T23:26:20.9809564Z               "line": 602
2026-06-07T23:26:20.9809651Z             },
2026-06-07T23:26:20.9809736Z             {
2026-06-07T23:26:20.9809841Z               "path": "crates/spt/src/wansend.rs",
2026-06-07T23:26:20.9809932Z               "line": 991
2026-06-07T23:26:20.9810023Z             }
2026-06-07T23:26:20.9810113Z           ]
2026-06-07T23:26:20.9810199Z         }
2026-06-07T23:26:20.9810285Z       }
2026-06-07T23:26:20.9810365Z     },
2026-06-07T23:26:20.9810451Z     {
2026-06-07T23:26:20.9810543Z       "id": "REQ-NET-2",
2026-06-07T23:26:20.9810723Z       "title": "n0 relay default + self-host knob + plain-language disclosure",
2026-06-07T23:26:20.9810819Z       "requiredStages": [
2026-06-07T23:26:20.9810919Z         "impl"
2026-06-07T23:26:20.9811009Z       ],
2026-06-07T23:26:20.9811095Z       "stages": {
2026-06-07T23:26:20.9811182Z         "doc": {
2026-06-07T23:26:20.9811281Z           "complete": false,
2026-06-07T23:26:20.9811376Z           "evidence": []
2026-06-07T23:26:20.9811458Z         },
2026-06-07T23:26:20.9811549Z         "impl": {
2026-06-07T23:26:20.9811643Z           "complete": true,
2026-06-07T23:26:20.9811733Z           "evidence": [
2026-06-07T23:26:20.9811819Z             {
2026-06-07T23:26:20.9811936Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-07T23:26:20.9812030Z               "line": 57
2026-06-07T23:26:20.9812112Z             },
2026-06-07T23:26:20.9812199Z             {
2026-06-07T23:26:20.9812322Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-07T23:26:20.9812412Z               "line": 39
2026-06-07T23:26:20.9812499Z             },
2026-06-07T23:26:20.9812580Z             {
2026-06-07T23:26:20.9812703Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-07T23:26:20.9812799Z               "line": 49
2026-06-07T23:26:20.9812885Z             },
2026-06-07T23:26:20.9812970Z             {
2026-06-07T23:26:20.9813081Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-07T23:26:20.9813180Z               "line": 127
2026-06-07T23:26:20.9813266Z             },
2026-06-07T23:26:20.9813352Z             {
2026-06-07T23:26:20.9813467Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-07T23:26:20.9813557Z               "line": 143
2026-06-07T23:26:20.9813642Z             },
2026-06-07T23:26:20.9813730Z             {
2026-06-07T23:26:20.9813852Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-07T23:26:20.9813943Z               "line": 158
2026-06-07T23:26:20.9814030Z             }
2026-06-07T23:26:20.9814115Z           ]
2026-06-07T23:26:20.9814200Z         },
2026-06-07T23:26:20.9814286Z         "int": {
2026-06-07T23:26:20.9814379Z           "complete": false,
2026-06-07T23:26:20.9814472Z           "evidence": []
2026-06-07T23:26:20.9814557Z         },
2026-06-07T23:26:20.9814643Z         "unit": {
2026-06-07T23:26:20.9814735Z           "complete": true,
2026-06-07T23:26:20.9814829Z           "evidence": [
2026-06-07T23:26:20.9814919Z             {
2026-06-07T23:26:20.9815040Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-07T23:26:20.9815135Z               "line": 402
2026-06-07T23:26:20.9815219Z             }
2026-06-07T23:26:20.9815306Z           ]
2026-06-07T23:26:20.9815388Z         }
2026-06-07T23:26:20.9815473Z       }
2026-06-07T23:26:20.9815558Z     },
2026-06-07T23:26:20.9815636Z     {
2026-06-07T23:26:20.9815731Z       "id": "REQ-NET-3",
2026-06-07T23:26:20.9815902Z       "title": "Cross-node Psyche sync over P2P replaces gh-repo-sync",
2026-06-07T23:26:20.9816003Z       "requiredStages": [
2026-06-07T23:26:20.9816092Z         "impl",
2026-06-07T23:26:20.9816173Z         "unit"
2026-06-07T23:26:20.9816260Z       ],
2026-06-07T23:26:20.9816426Z       "stages": {
2026-06-07T23:26:20.9816512Z         "doc": {
2026-06-07T23:26:20.9816609Z           "complete": false,
2026-06-07T23:26:20.9816704Z           "evidence": []
2026-06-07T23:26:20.9816788Z         },
2026-06-07T23:26:20.9817028Z         "impl": {
2026-06-07T23:26:20.9817126Z           "complete": true,
2026-06-07T23:26:20.9817217Z           "evidence": [
2026-06-07T23:26:20.9817303Z             {
2026-06-07T23:26:20.9817419Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-07T23:26:20.9817510Z               "line": 39
2026-06-07T23:26:20.9817597Z             },
2026-06-07T23:26:20.9817683Z             {
2026-06-07T23:26:20.9817796Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-07T23:26:20.9817883Z               "line": 179
2026-06-07T23:26:20.9817968Z             },
2026-06-07T23:26:20.9818054Z             {
2026-06-07T23:26:20.9818168Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-07T23:26:20.9818264Z               "line": 330
2026-06-07T23:26:20.9818355Z             },
2026-06-07T23:26:20.9818440Z             {
2026-06-07T23:26:20.9818551Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-07T23:26:20.9818640Z               "line": 36
2026-06-07T23:26:20.9818726Z             },
2026-06-07T23:26:20.9818812Z             {
2026-06-07T23:26:20.9818941Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:20.9819027Z               "line": 158
2026-06-07T23:26:20.9819117Z             },
2026-06-07T23:26:20.9819195Z             {
2026-06-07T23:26:20.9819307Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:20.9819384Z               "line": 212
2026-06-07T23:26:20.9819471Z             },
2026-06-07T23:26:20.9819557Z             {
2026-06-07T23:26:20.9819674Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:20.9819764Z               "line": 233
2026-06-07T23:26:20.9819851Z             },
2026-06-07T23:26:20.9819939Z             {
2026-06-07T23:26:20.9820057Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:20.9820154Z               "line": 291
2026-06-07T23:26:20.9820240Z             },
2026-06-07T23:26:20.9820320Z             {
2026-06-07T23:26:20.9820439Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:20.9820535Z               "line": 310
2026-06-07T23:26:20.9820620Z             },
2026-06-07T23:26:20.9820701Z             {
2026-06-07T23:26:20.9820826Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:20.9820916Z               "line": 348
2026-06-07T23:26:20.9821002Z             },
2026-06-07T23:26:20.9821084Z             {
2026-06-07T23:26:20.9821202Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:20.9821297Z               "line": 393
2026-06-07T23:26:20.9821380Z             },
2026-06-07T23:26:20.9821465Z             {
2026-06-07T23:26:20.9821588Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:20.9821679Z               "line": 406
2026-06-07T23:26:20.9821766Z             },
2026-06-07T23:26:20.9821850Z             {
2026-06-07T23:26:20.9821975Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-07T23:26:20.9822062Z               "line": 29
2026-06-07T23:26:20.9822151Z             },
2026-06-07T23:26:20.9822241Z             {
2026-06-07T23:26:20.9822360Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-07T23:26:20.9822454Z               "line": 72
2026-06-07T23:26:20.9822539Z             },
2026-06-07T23:26:20.9822624Z             {
2026-06-07T23:26:20.9822745Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-07T23:26:20.9822844Z               "line": 123
2026-06-07T23:26:20.9822929Z             }
2026-06-07T23:26:20.9823016Z           ]
2026-06-07T23:26:20.9823107Z         },
2026-06-07T23:26:20.9823192Z         "int": {
2026-06-07T23:26:20.9823288Z           "complete": false,
2026-06-07T23:26:20.9823383Z           "evidence": []
2026-06-07T23:26:20.9823469Z         },
2026-06-07T23:26:20.9823665Z         "unit": {
2026-06-07T23:26:20.9823760Z           "complete": true,
2026-06-07T23:26:20.9823850Z           "evidence": [
2026-06-07T23:26:20.9823932Z             {
2026-06-07T23:26:20.9824055Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-07T23:26:20.9824242Z               "line": 214
2026-06-07T23:26:20.9824328Z             },
2026-06-07T23:26:20.9824417Z             {
2026-06-07T23:26:20.9824532Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-07T23:26:20.9824624Z               "line": 342
2026-06-07T23:26:20.9824709Z             },
2026-06-07T23:26:20.9824798Z             {
2026-06-07T23:26:20.9824910Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-07T23:26:20.9824995Z               "line": 493
2026-06-07T23:26:20.9825084Z             },
2026-06-07T23:26:20.9825165Z             {
2026-06-07T23:26:20.9825280Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-07T23:26:20.9825371Z               "line": 93
2026-06-07T23:26:20.9825465Z             },
2026-06-07T23:26:20.9825551Z             {
2026-06-07T23:26:20.9825666Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-07T23:26:20.9825780Z               "line": 142
2026-06-07T23:26:20.9826090Z             },
2026-06-07T23:26:20.9826176Z             {
2026-06-07T23:26:20.9826310Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-07T23:26:20.9826400Z               "line": 315
2026-06-07T23:26:20.9826477Z             },
2026-06-07T23:26:20.9826558Z             {
2026-06-07T23:26:20.9826681Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-07T23:26:20.9826772Z               "line": 355
2026-06-07T23:26:20.9826859Z             },
2026-06-07T23:26:20.9827025Z             {
2026-06-07T23:26:20.9827145Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-07T23:26:20.9827236Z               "line": 494
2026-06-07T23:26:20.9827315Z             }
2026-06-07T23:26:20.9827411Z           ]
2026-06-07T23:26:20.9827545Z         }
2026-06-07T23:26:20.9827644Z       }
2026-06-07T23:26:20.9827724Z     },
2026-06-07T23:26:20.9827811Z     {
2026-06-07T23:26:20.9827910Z       "id": "REQ-NODE-IDENTITY",
2026-06-07T23:26:20.9828133Z       "title": "Ed25519 identity primitive: keypair, detached sign/verify, stable pubkey<->hex",
2026-06-07T23:26:20.9828238Z       "requiredStages": [
2026-06-07T23:26:20.9828327Z         "impl",
2026-06-07T23:26:20.9828414Z         "unit"
2026-06-07T23:26:20.9828495Z       ],
2026-06-07T23:26:20.9828590Z       "stages": {
2026-06-07T23:26:20.9828680Z         "doc": {
2026-06-07T23:26:20.9828772Z           "complete": false,
2026-06-07T23:26:20.9828867Z           "evidence": []
2026-06-07T23:26:20.9828948Z         },
2026-06-07T23:26:20.9829043Z         "impl": {
2026-06-07T23:26:20.9829135Z           "complete": true,
2026-06-07T23:26:20.9829230Z           "evidence": [
2026-06-07T23:26:20.9829315Z             {
2026-06-07T23:26:20.9829435Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-07T23:26:20.9829529Z               "line": 60
2026-06-07T23:26:20.9829615Z             },
2026-06-07T23:26:20.9829702Z             {
2026-06-07T23:26:20.9829821Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-07T23:26:20.9829916Z               "line": 68
2026-06-07T23:26:20.9830002Z             },
2026-06-07T23:26:20.9830089Z             {
2026-06-07T23:26:20.9830205Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-07T23:26:20.9830291Z               "line": 86
2026-06-07T23:26:20.9830382Z             },
2026-06-07T23:26:20.9830467Z             {
2026-06-07T23:26:20.9830580Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-07T23:26:20.9830671Z               "line": 120
2026-06-07T23:26:20.9830757Z             },
2026-06-07T23:26:20.9830847Z             {
2026-06-07T23:26:20.9830961Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-07T23:26:20.9831048Z               "line": 127
2026-06-07T23:26:20.9831134Z             },
2026-06-07T23:26:20.9831339Z             {
2026-06-07T23:26:20.9831458Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-07T23:26:20.9831543Z               "line": 143
2026-06-07T23:26:20.9831630Z             },
2026-06-07T23:26:20.9831815Z             {
2026-06-07T23:26:20.9831940Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-07T23:26:20.9832030Z               "line": 16
2026-06-07T23:26:20.9832115Z             }
2026-06-07T23:26:20.9832201Z           ]
2026-06-07T23:26:20.9832283Z         },
2026-06-07T23:26:20.9832368Z         "int": {
2026-06-07T23:26:20.9832463Z           "complete": false,
2026-06-07T23:26:20.9832559Z           "evidence": []
2026-06-07T23:26:20.9832641Z         },
2026-06-07T23:26:20.9832730Z         "unit": {
2026-06-07T23:26:20.9832825Z           "complete": true,
2026-06-07T23:26:20.9832915Z           "evidence": [
2026-06-07T23:26:20.9833001Z             {
2026-06-07T23:26:20.9833113Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-07T23:26:20.9833213Z               "line": 199
2026-06-07T23:26:20.9833305Z             },
2026-06-07T23:26:20.9833385Z             {
2026-06-07T23:26:20.9833499Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-07T23:26:20.9833596Z               "line": 218
2026-06-07T23:26:20.9833681Z             },
2026-06-07T23:26:20.9833766Z             {
2026-06-07T23:26:20.9833881Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-07T23:26:20.9833972Z               "line": 234
2026-06-07T23:26:20.9834057Z             },
2026-06-07T23:26:20.9834138Z             {
2026-06-07T23:26:20.9834253Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-07T23:26:20.9834344Z               "line": 256
2026-06-07T23:26:20.9834429Z             },
2026-06-07T23:26:20.9834516Z             {
2026-06-07T23:26:20.9834629Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-07T23:26:20.9834720Z               "line": 124
2026-06-07T23:26:20.9834807Z             },
2026-06-07T23:26:20.9834893Z             {
2026-06-07T23:26:20.9835006Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-07T23:26:20.9835096Z               "line": 140
2026-06-07T23:26:20.9835184Z             },
2026-06-07T23:26:20.9835269Z             {
2026-06-07T23:26:20.9835597Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-07T23:26:20.9835696Z               "line": 155
2026-06-07T23:26:20.9835777Z             }
2026-06-07T23:26:20.9835860Z           ]
2026-06-07T23:26:20.9835940Z         }
2026-06-07T23:26:20.9836020Z       }
2026-06-07T23:26:20.9836107Z     },
2026-06-07T23:26:20.9836193Z     {
2026-06-07T23:26:20.9836292Z       "id": "REQ-NOTIF-1",
2026-06-07T23:26:20.9836636Z       "title": "Notification primitive: per-subnet replicated spool, seen/dismissed, resurface-at-boundary, subsumes update+consent prompts",
2026-06-07T23:26:20.9836731Z       "requiredStages": [
2026-06-07T23:26:20.9836855Z         "impl",
2026-06-07T23:26:20.9837109Z         "unit",
2026-06-07T23:26:20.9837208Z         "int"
2026-06-07T23:26:20.9837294Z       ],
2026-06-07T23:26:20.9837380Z       "stages": {
2026-06-07T23:26:20.9837466Z         "doc": {
2026-06-07T23:26:20.9837561Z           "complete": false,
2026-06-07T23:26:20.9837651Z           "evidence": []
2026-06-07T23:26:20.9837739Z         },
2026-06-07T23:26:20.9837833Z         "impl": {
2026-06-07T23:26:20.9837928Z           "complete": true,
2026-06-07T23:26:20.9838020Z           "evidence": [
2026-06-07T23:26:20.9838105Z             {
2026-06-07T23:26:20.9838223Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-07T23:26:20.9838313Z               "line": 474
2026-06-07T23:26:20.9838399Z             },
2026-06-07T23:26:20.9838493Z             {
2026-06-07T23:26:20.9838606Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9838698Z               "line": 30
2026-06-07T23:26:20.9838783Z             },
2026-06-07T23:26:20.9838874Z             {
2026-06-07T23:26:20.9838988Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9839193Z               "line": 62
2026-06-07T23:26:20.9839284Z             },
2026-06-07T23:26:20.9839370Z             {
2026-06-07T23:26:20.9839484Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9839661Z               "line": 86
2026-06-07T23:26:20.9839751Z             },
2026-06-07T23:26:20.9839842Z             {
2026-06-07T23:26:20.9839962Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9840052Z               "line": 100
2026-06-07T23:26:20.9840128Z             },
2026-06-07T23:26:20.9840218Z             {
2026-06-07T23:26:20.9840324Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9840423Z               "line": 135
2026-06-07T23:26:20.9840519Z             },
2026-06-07T23:26:20.9840601Z             {
2026-06-07T23:26:20.9840714Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9840804Z               "line": 180
2026-06-07T23:26:20.9840889Z             },
2026-06-07T23:26:20.9840980Z             {
2026-06-07T23:26:20.9841092Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9841187Z               "line": 251
2026-06-07T23:26:20.9841269Z             },
2026-06-07T23:26:20.9841365Z             {
2026-06-07T23:26:20.9841478Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9841569Z               "line": 361
2026-06-07T23:26:20.9841650Z             },
2026-06-07T23:26:20.9841741Z             {
2026-06-07T23:26:20.9841850Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9841942Z               "line": 421
2026-06-07T23:26:20.9842032Z             },
2026-06-07T23:26:20.9842117Z             {
2026-06-07T23:26:20.9842242Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-07T23:26:20.9842332Z               "line": 24
2026-06-07T23:26:20.9842417Z             },
2026-06-07T23:26:20.9842505Z             {
2026-06-07T23:26:20.9842623Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-07T23:26:20.9842723Z               "line": 34
2026-06-07T23:26:20.9842804Z             },
2026-06-07T23:26:20.9842891Z             {
2026-06-07T23:26:20.9843004Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-07T23:26:20.9843105Z               "line": 58
2026-06-07T23:26:20.9843192Z             },
2026-06-07T23:26:20.9843276Z             {
2026-06-07T23:26:20.9843394Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-07T23:26:20.9843480Z               "line": 79
2026-06-07T23:26:20.9843570Z             },
2026-06-07T23:26:20.9843649Z             {
2026-06-07T23:26:20.9843768Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-07T23:26:20.9843865Z               "line": 91
2026-06-07T23:26:20.9843945Z             },
2026-06-07T23:26:20.9844036Z             {
2026-06-07T23:26:20.9844156Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:20.9844251Z               "line": 41
2026-06-07T23:26:20.9844335Z             },
2026-06-07T23:26:20.9844427Z             {
2026-06-07T23:26:20.9844555Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-07T23:26:20.9844650Z               "line": 96
2026-06-07T23:26:20.9844737Z             },
2026-06-07T23:26:20.9844828Z             {
2026-06-07T23:26:20.9844946Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-07T23:26:20.9845042Z               "line": 20
2026-06-07T23:26:20.9845129Z             },
2026-06-07T23:26:20.9845213Z             {
2026-06-07T23:26:20.9845328Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-07T23:26:20.9845420Z               "line": 30
2026-06-07T23:26:20.9845495Z             },
2026-06-07T23:26:20.9845585Z             {
2026-06-07T23:26:20.9845705Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-07T23:26:20.9845833Z               "line": 50
2026-06-07T23:26:20.9845918Z             },
2026-06-07T23:26:20.9846001Z             {
2026-06-07T23:26:20.9846115Z               "path": "crates/spt-store/src/notif.rs",
2026-06-07T23:26:20.9846275Z               "line": 28
2026-06-07T23:26:20.9846362Z             },
2026-06-07T23:26:20.9846448Z             {
2026-06-07T23:26:20.9846557Z               "path": "crates/spt-store/src/notif.rs",
2026-06-07T23:26:20.9846715Z               "line": 126
2026-06-07T23:26:20.9846820Z             },
2026-06-07T23:26:20.9846919Z             {
2026-06-07T23:26:20.9847111Z               "path": "crates/spt-store/src/notif.rs",
2026-06-07T23:26:20.9847201Z               "line": 161
2026-06-07T23:26:20.9847292Z             },
2026-06-07T23:26:20.9847373Z             {
2026-06-07T23:26:20.9847487Z               "path": "crates/spt-store/src/notif.rs",
2026-06-07T23:26:20.9847572Z               "line": 202
2026-06-07T23:26:20.9847665Z             },
2026-06-07T23:26:20.9847749Z             {
2026-06-07T23:26:20.9847859Z               "path": "crates/spt-store/src/notif.rs",
2026-06-07T23:26:20.9847950Z               "line": 213
2026-06-07T23:26:20.9848031Z             },
2026-06-07T23:26:20.9848130Z             {
2026-06-07T23:26:20.9848241Z               "path": "crates/spt-store/src/notif.rs",
2026-06-07T23:26:20.9848332Z               "line": 238
2026-06-07T23:26:20.9848421Z             },
2026-06-07T23:26:20.9848512Z             {
2026-06-07T23:26:20.9848628Z               "path": "crates/spt-store/src/notif.rs",
2026-06-07T23:26:20.9848717Z               "line": 261
2026-06-07T23:26:20.9848811Z             },
2026-06-07T23:26:20.9848892Z             {
2026-06-07T23:26:20.9849011Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.9849105Z               "line": 63
2026-06-07T23:26:20.9849190Z             }
2026-06-07T23:26:20.9849277Z           ]
2026-06-07T23:26:20.9849363Z         },
2026-06-07T23:26:20.9849452Z         "int": {
2026-06-07T23:26:20.9849543Z           "complete": true,
2026-06-07T23:26:20.9849639Z           "evidence": [
2026-06-07T23:26:20.9849725Z             {
2026-06-07T23:26:20.9849853Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-07T23:26:20.9849949Z               "line": 274
2026-06-07T23:26:20.9850025Z             },
2026-06-07T23:26:20.9850106Z             {
2026-06-07T23:26:20.9850226Z               "path": "crates/spt-daemon/tests/peerloop.rs",
2026-06-07T23:26:20.9850326Z               "line": 102
2026-06-07T23:26:20.9850411Z             },
2026-06-07T23:26:20.9850497Z             {
2026-06-07T23:26:20.9850621Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:20.9850707Z               "line": 612
2026-06-07T23:26:20.9850793Z             },
2026-06-07T23:26:20.9850879Z             {
2026-06-07T23:26:20.9850997Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:20.9851088Z               "line": 1005
2026-06-07T23:26:20.9851175Z             }
2026-06-07T23:26:20.9851260Z           ]
2026-06-07T23:26:20.9851340Z         },
2026-06-07T23:26:20.9851435Z         "unit": {
2026-06-07T23:26:20.9851531Z           "complete": true,
2026-06-07T23:26:20.9851624Z           "evidence": [
2026-06-07T23:26:20.9851709Z             {
2026-06-07T23:26:20.9851824Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9851915Z               "line": 514
2026-06-07T23:26:20.9852000Z             },
2026-06-07T23:26:20.9852096Z             {
2026-06-07T23:26:20.9852206Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9852301Z               "line": 563
2026-06-07T23:26:20.9852387Z             },
2026-06-07T23:26:20.9852478Z             {
2026-06-07T23:26:20.9852592Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9852682Z               "line": 666
2026-06-07T23:26:20.9852769Z             },
2026-06-07T23:26:20.9852854Z             {
2026-06-07T23:26:20.9852963Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9853055Z               "line": 698
2026-06-07T23:26:20.9853141Z             },
2026-06-07T23:26:20.9853225Z             {
2026-06-07T23:26:20.9853336Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9853535Z               "line": 766
2026-06-07T23:26:20.9853621Z             },
2026-06-07T23:26:20.9853709Z             {
2026-06-07T23:26:20.9853827Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9854001Z               "line": 824
2026-06-07T23:26:20.9854083Z             },
2026-06-07T23:26:20.9854168Z             {
2026-06-07T23:26:20.9854281Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9854371Z               "line": 1045
2026-06-07T23:26:20.9854459Z             },
2026-06-07T23:26:20.9854543Z             {
2026-06-07T23:26:20.9854663Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-07T23:26:20.9854758Z               "line": 140
2026-06-07T23:26:20.9854844Z             },
2026-06-07T23:26:20.9854929Z             {
2026-06-07T23:26:20.9855045Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-07T23:26:20.9855140Z               "line": 233
2026-06-07T23:26:20.9855230Z             },
2026-06-07T23:26:20.9855316Z             {
2026-06-07T23:26:20.9855435Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-07T23:26:20.9855530Z               "line": 256
2026-06-07T23:26:20.9855622Z             },
2026-06-07T23:26:20.9855708Z             {
2026-06-07T23:26:20.9855830Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-07T23:26:20.9855922Z               "line": 341
2026-06-07T23:26:20.9856004Z             },
2026-06-07T23:26:20.9856097Z             {
2026-06-07T23:26:20.9856208Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-07T23:26:20.9856304Z               "line": 373
2026-06-07T23:26:20.9856389Z             },
2026-06-07T23:26:20.9856474Z             {
2026-06-07T23:26:20.9856604Z               "path": "crates/spt-daemon/tests/notifsync.rs",
2026-06-07T23:26:20.9856699Z               "line": 117
2026-06-07T23:26:20.9856784Z             },
2026-06-07T23:26:20.9856869Z             {
2026-06-07T23:26:20.9857069Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-07T23:26:20.9857164Z               "line": 72
2026-06-07T23:26:20.9857256Z             },
2026-06-07T23:26:20.9857347Z             {
2026-06-07T23:26:20.9857456Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-07T23:26:20.9857551Z               "line": 97
2026-06-07T23:26:20.9857637Z             },
2026-06-07T23:26:20.9857727Z             {
2026-06-07T23:26:20.9857837Z               "path": "crates/spt-store/src/notif.rs",
2026-06-07T23:26:20.9857933Z               "line": 379
2026-06-07T23:26:20.9858024Z             },
2026-06-07T23:26:20.9858109Z             {
2026-06-07T23:26:20.9858220Z               "path": "crates/spt-store/src/notif.rs",
2026-06-07T23:26:20.9858309Z               "line": 417
2026-06-07T23:26:20.9858395Z             },
2026-06-07T23:26:20.9858486Z             {
2026-06-07T23:26:20.9858596Z               "path": "crates/spt-store/src/notif.rs",
2026-06-07T23:26:20.9858686Z               "line": 433
2026-06-07T23:26:20.9858776Z             },
2026-06-07T23:26:20.9858864Z             {
2026-06-07T23:26:20.9858976Z               "path": "crates/spt-store/src/notif.rs",
2026-06-07T23:26:20.9859073Z               "line": 472
2026-06-07T23:26:20.9859164Z             },
2026-06-07T23:26:20.9859249Z             {
2026-06-07T23:26:20.9859362Z               "path": "crates/spt-store/src/notif.rs",
2026-06-07T23:26:20.9859448Z               "line": 489
2026-06-07T23:26:20.9859538Z             },
2026-06-07T23:26:20.9859622Z             {
2026-06-07T23:26:20.9859735Z               "path": "crates/spt-store/src/notif.rs",
2026-06-07T23:26:20.9859828Z               "line": 517
2026-06-07T23:26:20.9859913Z             },
2026-06-07T23:26:20.9859999Z             {
2026-06-07T23:26:20.9860108Z               "path": "crates/spt-store/src/notif.rs",
2026-06-07T23:26:20.9860199Z               "line": 548
2026-06-07T23:26:20.9860285Z             },
2026-06-07T23:26:20.9860370Z             {
2026-06-07T23:26:20.9860486Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.9860675Z               "line": 455
2026-06-07T23:26:20.9860758Z             }
2026-06-07T23:26:20.9860838Z           ]
2026-06-07T23:26:20.9860919Z         }
2026-06-07T23:26:20.9861111Z       }
2026-06-07T23:26:20.9861191Z     },
2026-06-07T23:26:20.9861267Z     {
2026-06-07T23:26:20.9861363Z       "id": "REQ-NOTIF-2",
2026-06-07T23:26:20.9861620Z       "title": "spt notify (agent-issued subnet notif) + notif_command manifest seam (harness + shell adapters)",
2026-06-07T23:26:20.9861717Z       "requiredStages": [
2026-06-07T23:26:20.9861806Z         "doc",
2026-06-07T23:26:20.9861891Z         "impl",
2026-06-07T23:26:20.9861981Z         "unit",
2026-06-07T23:26:20.9862072Z         "int"
2026-06-07T23:26:20.9862157Z       ],
2026-06-07T23:26:20.9862245Z       "stages": {
2026-06-07T23:26:20.9862331Z         "doc": {
2026-06-07T23:26:20.9862428Z           "complete": true,
2026-06-07T23:26:20.9862518Z           "evidence": [
2026-06-07T23:26:20.9862612Z             {
2026-06-07T23:26:20.9862714Z               "path": "CONTEXT.md",
2026-06-07T23:26:20.9862804Z               "line": 346
2026-06-07T23:26:20.9862889Z             },
2026-06-07T23:26:20.9862975Z             {
2026-06-07T23:26:20.9863091Z               "path": "docs/MANIFEST.md",
2026-06-07T23:26:20.9863180Z               "line": 62
2026-06-07T23:26:20.9863266Z             }
2026-06-07T23:26:20.9863353Z           ]
2026-06-07T23:26:20.9863438Z         },
2026-06-07T23:26:20.9863528Z         "impl": {
2026-06-07T23:26:20.9863620Z           "complete": true,
2026-06-07T23:26:20.9863711Z           "evidence": [
2026-06-07T23:26:20.9863800Z             {
2026-06-07T23:26:20.9863920Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9864011Z               "line": 280
2026-06-07T23:26:20.9864096Z             },
2026-06-07T23:26:20.9864181Z             {
2026-06-07T23:26:20.9864293Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9864392Z               "line": 294
2026-06-07T23:26:20.9864476Z             },
2026-06-07T23:26:20.9864561Z             {
2026-06-07T23:26:20.9864681Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9864774Z               "line": 319
2026-06-07T23:26:20.9864869Z             },
2026-06-07T23:26:20.9864951Z             {
2026-06-07T23:26:20.9865075Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:20.9865165Z               "line": 126
2026-06-07T23:26:20.9865256Z             },
2026-06-07T23:26:20.9865352Z             {
2026-06-07T23:26:20.9865460Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.9865557Z               "line": 72
2026-06-07T23:26:20.9865638Z             },
2026-06-07T23:26:20.9865724Z             {
2026-06-07T23:26:20.9865828Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9865920Z               "line": 1352
2026-06-07T23:26:20.9866009Z             },
2026-06-07T23:26:20.9866090Z             {
2026-06-07T23:26:20.9866210Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9866300Z               "line": 1401
2026-06-07T23:26:20.9866391Z             },
2026-06-07T23:26:20.9866477Z             {
2026-06-07T23:26:20.9866578Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9866676Z               "line": 1480
2026-06-07T23:26:20.9866758Z             },
2026-06-07T23:26:20.9866850Z             {
2026-06-07T23:26:20.9867039Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9867126Z               "line": 1519
2026-06-07T23:26:20.9867217Z             }
2026-06-07T23:26:20.9867301Z           ]
2026-06-07T23:26:20.9867386Z         },
2026-06-07T23:26:20.9867472Z         "int": {
2026-06-07T23:26:20.9867568Z           "complete": true,
2026-06-07T23:26:20.9867653Z           "evidence": [
2026-06-07T23:26:20.9867743Z             {
2026-06-07T23:26:20.9867859Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:20.9867949Z               "line": 738
2026-06-07T23:26:20.9868141Z             },
2026-06-07T23:26:20.9868221Z             {
2026-06-07T23:26:20.9868340Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:20.9868431Z               "line": 1158
2026-06-07T23:26:20.9868602Z             }
2026-06-07T23:26:20.9868688Z           ]
2026-06-07T23:26:20.9868770Z         },
2026-06-07T23:26:20.9868860Z         "unit": {
2026-06-07T23:26:20.9868950Z           "complete": true,
2026-06-07T23:26:20.9869041Z           "evidence": [
2026-06-07T23:26:20.9869128Z             {
2026-06-07T23:26:20.9869246Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9869337Z               "line": 894
2026-06-07T23:26:20.9869424Z             },
2026-06-07T23:26:20.9869508Z             {
2026-06-07T23:26:20.9869618Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9869714Z               "line": 962
2026-06-07T23:26:20.9869795Z             },
2026-06-07T23:26:20.9869884Z             {
2026-06-07T23:26:20.9870003Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9870094Z               "line": 4785
2026-06-07T23:26:20.9870182Z             },
2026-06-07T23:26:20.9870268Z             {
2026-06-07T23:26:20.9870373Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9870464Z               "line": 4840
2026-06-07T23:26:20.9870554Z             }
2026-06-07T23:26:20.9870640Z           ]
2026-06-07T23:26:20.9870726Z         }
2026-06-07T23:26:20.9872721Z       }
2026-06-07T23:26:20.9872824Z     },
2026-06-07T23:26:20.9872911Z     {
2026-06-07T23:26:20.9873012Z       "id": "REQ-PAIR-1",
2026-06-07T23:26:20.9873130Z       "title": "TOTP-seeded SPAKE2 pairing",
2026-06-07T23:26:20.9873230Z       "requiredStages": [
2026-06-07T23:26:20.9873317Z         "impl",
2026-06-07T23:26:20.9873407Z         "unit",
2026-06-07T23:26:20.9873487Z         "int"
2026-06-07T23:26:20.9873575Z       ],
2026-06-07T23:26:20.9873660Z       "stages": {
2026-06-07T23:26:20.9873750Z         "doc": {
2026-06-07T23:26:20.9873855Z           "complete": false,
2026-06-07T23:26:20.9873946Z           "evidence": []
2026-06-07T23:26:20.9874032Z         },
2026-06-07T23:26:20.9874126Z         "impl": {
2026-06-07T23:26:20.9874218Z           "complete": true,
2026-06-07T23:26:20.9874313Z           "evidence": [
2026-06-07T23:26:20.9874404Z             {
2026-06-07T23:26:20.9874538Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-07T23:26:20.9874632Z               "line": 27
2026-06-07T23:26:20.9874718Z             },
2026-06-07T23:26:20.9874800Z             {
2026-06-07T23:26:20.9874933Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-07T23:26:20.9875017Z               "line": 88
2026-06-07T23:26:20.9875108Z             },
2026-06-07T23:26:20.9875194Z             {
2026-06-07T23:26:20.9875316Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-07T23:26:20.9875406Z               "line": 110
2026-06-07T23:26:20.9875492Z             },
2026-06-07T23:26:20.9875589Z             {
2026-06-07T23:26:20.9875706Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-07T23:26:20.9875797Z               "line": 153
2026-06-07T23:26:20.9875883Z             },
2026-06-07T23:26:20.9875969Z             {
2026-06-07T23:26:20.9876093Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-07T23:26:20.9876179Z               "line": 182
2026-06-07T23:26:20.9876265Z             },
2026-06-07T23:26:20.9876350Z             {
2026-06-07T23:26:20.9876480Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-07T23:26:20.9876569Z               "line": 29
2026-06-07T23:26:20.9876655Z             },
2026-06-07T23:26:20.9876742Z             {
2026-06-07T23:26:20.9876884Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-07T23:26:20.9877067Z               "line": 31
2026-06-07T23:26:20.9877138Z             },
2026-06-07T23:26:20.9877294Z             {
2026-06-07T23:26:20.9877434Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-07T23:26:20.9877857Z               "line": 40
2026-06-07T23:26:20.9877951Z             },
2026-06-07T23:26:20.9878033Z             {
2026-06-07T23:26:20.9878167Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-07T23:26:20.9878343Z               "line": 165
2026-06-07T23:26:20.9878429Z             },
2026-06-07T23:26:20.9878514Z             {
2026-06-07T23:26:20.9878637Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-07T23:26:20.9878729Z               "line": 359
2026-06-07T23:26:20.9878811Z             }
2026-06-07T23:26:20.9878895Z           ]
2026-06-07T23:26:20.9878987Z         },
2026-06-07T23:26:20.9879072Z         "int": {
2026-06-07T23:26:20.9879167Z           "complete": true,
2026-06-07T23:26:20.9879258Z           "evidence": [
2026-06-07T23:26:20.9879345Z             {
2026-06-07T23:26:20.9879467Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:20.9879558Z               "line": 573
2026-06-07T23:26:20.9879650Z             },
2026-06-07T23:26:20.9879735Z             {
2026-06-07T23:26:20.9879858Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:20.9879946Z               "line": 790
2026-06-07T23:26:20.9880036Z             }
2026-06-07T23:26:20.9880120Z           ]
2026-06-07T23:26:20.9880202Z         },
2026-06-07T23:26:20.9880289Z         "unit": {
2026-06-07T23:26:20.9880383Z           "complete": true,
2026-06-07T23:26:20.9880473Z           "evidence": [
2026-06-07T23:26:20.9880558Z             {
2026-06-07T23:26:20.9880682Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-07T23:26:20.9880771Z               "line": 236
2026-06-07T23:26:20.9880860Z             },
2026-06-07T23:26:20.9880948Z             {
2026-06-07T23:26:20.9881085Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-07T23:26:20.9881175Z               "line": 349
2026-06-07T23:26:20.9881263Z             },
2026-06-07T23:26:20.9881353Z             {
2026-06-07T23:26:20.9881481Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-07T23:26:20.9881573Z               "line": 194
2026-06-07T23:26:20.9881658Z             },
2026-06-07T23:26:20.9881743Z             {
2026-06-07T23:26:20.9881868Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-07T23:26:20.9881958Z               "line": 216
2026-06-07T23:26:20.9882053Z             },
2026-06-07T23:26:20.9882134Z             {
2026-06-07T23:26:20.9882264Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-07T23:26:20.9882354Z               "line": 230
2026-06-07T23:26:20.9882440Z             },
2026-06-07T23:26:20.9882527Z             {
2026-06-07T23:26:20.9882649Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-07T23:26:20.9882735Z               "line": 242
2026-06-07T23:26:20.9882813Z             },
2026-06-07T23:26:20.9882889Z             {
2026-06-07T23:26:20.9883002Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-07T23:26:20.9883091Z               "line": 256
2026-06-07T23:26:20.9883168Z             },
2026-06-07T23:26:20.9883263Z             {
2026-06-07T23:26:20.9883385Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-07T23:26:20.9883476Z               "line": 270
2026-06-07T23:26:20.9883567Z             },
2026-06-07T23:26:20.9883647Z             {
2026-06-07T23:26:20.9883767Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-07T23:26:20.9883858Z               "line": 277
2026-06-07T23:26:20.9883943Z             },
2026-06-07T23:26:20.9884028Z             {
2026-06-07T23:26:20.9884144Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-07T23:26:20.9884239Z               "line": 295
2026-06-07T23:26:20.9884324Z             },
2026-06-07T23:26:20.9884411Z             {
2026-06-07T23:26:20.9884530Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-07T23:26:20.9884620Z               "line": 819
2026-06-07T23:26:20.9884783Z             },
2026-06-07T23:26:20.9884868Z             {
2026-06-07T23:26:20.9884987Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-07T23:26:20.9885079Z               "line": 903
2026-06-07T23:26:20.9885226Z             },
2026-06-07T23:26:20.9885316Z             {
2026-06-07T23:26:20.9885437Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-07T23:26:20.9885526Z               "line": 972
2026-06-07T23:26:20.9885611Z             },
2026-06-07T23:26:20.9885696Z             {
2026-06-07T23:26:20.9885820Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-07T23:26:20.9885909Z               "line": 1035
2026-06-07T23:26:20.9885995Z             },
2026-06-07T23:26:20.9886076Z             {
2026-06-07T23:26:20.9886195Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-07T23:26:20.9886290Z               "line": 1093
2026-06-07T23:26:20.9886372Z             },
2026-06-07T23:26:20.9886458Z             {
2026-06-07T23:26:20.9886585Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-07T23:26:20.9886677Z               "line": 1325
2026-06-07T23:26:20.9886763Z             }
2026-06-07T23:26:20.9886853Z           ]
2026-06-07T23:26:20.9887045Z         }
2026-06-07T23:26:20.9887129Z       }
2026-06-07T23:26:20.9887215Z     },
2026-06-07T23:26:20.9887297Z     {
2026-06-07T23:26:20.9887398Z       "id": "REQ-PAIR-2",
2026-06-07T23:26:20.9887535Z       "title": "Local trust store with TOFU + warn-on-change",
2026-06-07T23:26:20.9887636Z       "requiredStages": [
2026-06-07T23:26:20.9887722Z         "impl",
2026-06-07T23:26:20.9887811Z         "unit"
2026-06-07T23:26:20.9887897Z       ],
2026-06-07T23:26:20.9887984Z       "stages": {
2026-06-07T23:26:20.9888070Z         "doc": {
2026-06-07T23:26:20.9888164Z           "complete": false,
2026-06-07T23:26:20.9888256Z           "evidence": []
2026-06-07T23:26:20.9888342Z         },
2026-06-07T23:26:20.9888431Z         "impl": {
2026-06-07T23:26:20.9888535Z           "complete": true,
2026-06-07T23:26:20.9888626Z           "evidence": [
2026-06-07T23:26:20.9888717Z             {
2026-06-07T23:26:20.9888835Z               "path": "crates/spt-store/src/trust.rs",
2026-06-07T23:26:20.9888917Z               "line": 42
2026-06-07T23:26:20.9889008Z             },
2026-06-07T23:26:20.9889089Z             {
2026-06-07T23:26:20.9889193Z               "path": "crates/spt-store/src/trust.rs",
2026-06-07T23:26:20.9889275Z               "line": 150
2026-06-07T23:26:20.9889361Z             },
2026-06-07T23:26:20.9889436Z             {
2026-06-07T23:26:20.9889552Z               "path": "crates/spt-store/src/trust.rs",
2026-06-07T23:26:20.9889647Z               "line": 170
2026-06-07T23:26:20.9889732Z             },
2026-06-07T23:26:20.9889823Z             {
2026-06-07T23:26:20.9889948Z               "path": "crates/spt-store/src/trust.rs",
2026-06-07T23:26:20.9890037Z               "line": 208
2026-06-07T23:26:20.9890118Z             },
2026-06-07T23:26:20.9890205Z             {
2026-06-07T23:26:20.9890323Z               "path": "crates/spt-store/src/trust.rs",
2026-06-07T23:26:20.9890414Z               "line": 231
2026-06-07T23:26:20.9890501Z             }
2026-06-07T23:26:20.9890587Z           ]
2026-06-07T23:26:20.9890676Z         },
2026-06-07T23:26:20.9890757Z         "int": {
2026-06-07T23:26:20.9890859Z           "complete": false,
2026-06-07T23:26:20.9890953Z           "evidence": []
2026-06-07T23:26:20.9891038Z         },
2026-06-07T23:26:20.9891123Z         "unit": {
2026-06-07T23:26:20.9891219Z           "complete": true,
2026-06-07T23:26:20.9891307Z           "evidence": [
2026-06-07T23:26:20.9891393Z             {
2026-06-07T23:26:20.9891503Z               "path": "crates/spt-store/src/trust.rs",
2026-06-07T23:26:20.9891599Z               "line": 252
2026-06-07T23:26:20.9891679Z             },
2026-06-07T23:26:20.9891765Z             {
2026-06-07T23:26:20.9891875Z               "path": "crates/spt-store/src/trust.rs",
2026-06-07T23:26:20.9891965Z               "line": 271
2026-06-07T23:26:20.9892171Z             },
2026-06-07T23:26:20.9892256Z             {
2026-06-07T23:26:20.9892366Z               "path": "crates/spt-store/src/trust.rs",
2026-06-07T23:26:20.9892452Z               "line": 286
2026-06-07T23:26:20.9892628Z             },
2026-06-07T23:26:20.9892714Z             {
2026-06-07T23:26:20.9892829Z               "path": "crates/spt-store/src/trust.rs",
2026-06-07T23:26:20.9892919Z               "line": 308
2026-06-07T23:26:20.9893019Z             },
2026-06-07T23:26:20.9893125Z             {
2026-06-07T23:26:20.9893243Z               "path": "crates/spt-store/src/trust.rs",
2026-06-07T23:26:20.9893363Z               "line": 324
2026-06-07T23:26:20.9893445Z             },
2026-06-07T23:26:20.9893528Z             {
2026-06-07T23:26:20.9893656Z               "path": "crates/spt-store/src/trust.rs",
2026-06-07T23:26:20.9893757Z               "line": 342
2026-06-07T23:26:20.9893841Z             },
2026-06-07T23:26:20.9893926Z             {
2026-06-07T23:26:20.9894041Z               "path": "crates/spt-store/src/trust.rs",
2026-06-07T23:26:20.9894127Z               "line": 357
2026-06-07T23:26:20.9894222Z             },
2026-06-07T23:26:20.9894302Z             {
2026-06-07T23:26:20.9894408Z               "path": "crates/spt-store/src/trust.rs",
2026-06-07T23:26:20.9894503Z               "line": 370
2026-06-07T23:26:20.9894584Z             },
2026-06-07T23:26:20.9894670Z             {
2026-06-07T23:26:20.9894775Z               "path": "crates/spt-store/src/trust.rs",
2026-06-07T23:26:20.9894865Z               "line": 384
2026-06-07T23:26:20.9894951Z             }
2026-06-07T23:26:20.9895033Z           ]
2026-06-07T23:26:20.9895118Z         }
2026-06-07T23:26:20.9895199Z       }
2026-06-07T23:26:20.9895281Z     },
2026-06-07T23:26:20.9895367Z     {
2026-06-07T23:26:20.9895461Z       "id": "REQ-PAIR-3",
2026-06-07T23:26:20.9895605Z       "title": "Fetch current pairing code from any paired node",
2026-06-07T23:26:20.9895701Z       "requiredStages": [
2026-06-07T23:26:20.9895795Z         "impl",
2026-06-07T23:26:20.9895876Z         "unit"
2026-06-07T23:26:20.9895964Z       ],
2026-06-07T23:26:20.9896049Z       "stages": {
2026-06-07T23:26:20.9896138Z         "doc": {
2026-06-07T23:26:20.9896233Z           "complete": false,
2026-06-07T23:26:20.9896323Z           "evidence": []
2026-06-07T23:26:20.9896408Z         },
2026-06-07T23:26:20.9896492Z         "impl": {
2026-06-07T23:26:20.9896583Z           "complete": true,
2026-06-07T23:26:20.9896675Z           "evidence": [
2026-06-07T23:26:20.9896760Z             {
2026-06-07T23:26:20.9896869Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9897032Z               "line": 1903
2026-06-07T23:26:20.9897122Z             },
2026-06-07T23:26:20.9897203Z             {
2026-06-07T23:26:20.9897309Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9897399Z               "line": 1972
2026-06-07T23:26:20.9897484Z             },
2026-06-07T23:26:20.9897567Z             {
2026-06-07T23:26:20.9897671Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9897775Z               "line": 2208
2026-06-07T23:26:20.9897857Z             }
2026-06-07T23:26:20.9897943Z           ]
2026-06-07T23:26:20.9898023Z         },
2026-06-07T23:26:20.9898114Z         "int": {
2026-06-07T23:26:20.9898206Z           "complete": false,
2026-06-07T23:26:20.9898296Z           "evidence": []
2026-06-07T23:26:20.9898381Z         },
2026-06-07T23:26:20.9898467Z         "unit": {
2026-06-07T23:26:20.9898568Z           "complete": true,
2026-06-07T23:26:20.9898658Z           "evidence": [
2026-06-07T23:26:20.9898743Z             {
2026-06-07T23:26:20.9898855Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9898945Z               "line": 6153
2026-06-07T23:26:20.9899033Z             },
2026-06-07T23:26:20.9899114Z             {
2026-06-07T23:26:20.9899220Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9899310Z               "line": 6343
2026-06-07T23:26:20.9899395Z             },
2026-06-07T23:26:20.9899587Z             {
2026-06-07T23:26:20.9899686Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9899777Z               "line": 6674
2026-06-07T23:26:20.9899869Z             },
2026-06-07T23:26:20.9899950Z             {
2026-06-07T23:26:20.9900140Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9900230Z               "line": 6693
2026-06-07T23:26:20.9900321Z             },
2026-06-07T23:26:20.9900402Z             {
2026-06-07T23:26:20.9900508Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9900592Z               "line": 6717
2026-06-07T23:26:20.9900678Z             },
2026-06-07T23:26:20.9900761Z             {
2026-06-07T23:26:20.9900865Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9900955Z               "line": 6736
2026-06-07T23:26:20.9901036Z             },
2026-06-07T23:26:20.9901123Z             {
2026-06-07T23:26:20.9901221Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9901313Z               "line": 6749
2026-06-07T23:26:20.9901400Z             },
2026-06-07T23:26:20.9901485Z             {
2026-06-07T23:26:20.9901588Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9901678Z               "line": 6758
2026-06-07T23:26:20.9901769Z             }
2026-06-07T23:26:20.9901854Z           ]
2026-06-07T23:26:20.9901938Z         }
2026-06-07T23:26:20.9902025Z       }
2026-06-07T23:26:20.9902106Z     },
2026-06-07T23:26:20.9902187Z     {
2026-06-07T23:26:20.9902281Z       "id": "REQ-PAIR-4",
2026-06-07T23:26:20.9902398Z       "title": "Subnet naming on first pairing",
2026-06-07T23:26:20.9902493Z       "requiredStages": [
2026-06-07T23:26:20.9902577Z         "impl",
2026-06-07T23:26:20.9902664Z         "unit"
2026-06-07T23:26:20.9902750Z       ],
2026-06-07T23:26:20.9902840Z       "stages": {
2026-06-07T23:26:20.9902921Z         "doc": {
2026-06-07T23:26:20.9903017Z           "complete": false,
2026-06-07T23:26:20.9903111Z           "evidence": []
2026-06-07T23:26:20.9903197Z         },
2026-06-07T23:26:20.9903288Z         "impl": {
2026-06-07T23:26:20.9903384Z           "complete": true,
2026-06-07T23:26:20.9903479Z           "evidence": [
2026-06-07T23:26:20.9903560Z             {
2026-06-07T23:26:20.9903685Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-07T23:26:20.9903779Z               "line": 154
2026-06-07T23:26:20.9903865Z             }
2026-06-07T23:26:20.9903947Z           ]
2026-06-07T23:26:20.9904033Z         },
2026-06-07T23:26:20.9904122Z         "int": {
2026-06-07T23:26:20.9904216Z           "complete": false,
2026-06-07T23:26:20.9904308Z           "evidence": []
2026-06-07T23:26:20.9904387Z         },
2026-06-07T23:26:20.9904477Z         "unit": {
2026-06-07T23:26:20.9904572Z           "complete": true,
2026-06-07T23:26:20.9904663Z           "evidence": [
2026-06-07T23:26:20.9904748Z             {
2026-06-07T23:26:20.9904877Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-07T23:26:20.9904968Z               "line": 1151
2026-06-07T23:26:20.9905059Z             }
2026-06-07T23:26:20.9905144Z           ]
2026-06-07T23:26:20.9905226Z         }
2026-06-07T23:26:20.9905311Z       }
2026-06-07T23:26:20.9905397Z     },
2026-06-07T23:26:20.9905483Z     {
2026-06-07T23:26:20.9905579Z       "id": "REQ-PAIR-5",
2026-06-07T23:26:20.9905870Z       "title": "Multi-subnet pairing: subnet-name discovery input, create-new-names-up-front, rendezvous-token hashing",
2026-06-07T23:26:20.9905974Z       "requiredStages": [
2026-06-07T23:26:20.9906060Z         "impl",
2026-06-07T23:26:20.9906150Z         "unit",
2026-06-07T23:26:20.9906238Z         "int"
2026-06-07T23:26:20.9906322Z       ],
2026-06-07T23:26:20.9906413Z       "stages": {
2026-06-07T23:26:20.9906495Z         "doc": {
2026-06-07T23:26:20.9906590Z           "complete": false,
2026-06-07T23:26:20.9906679Z           "evidence": []
2026-06-07T23:26:20.9906764Z         },
2026-06-07T23:26:20.9906860Z         "impl": {
2026-06-07T23:26:20.9907043Z           "complete": true,
2026-06-07T23:26:20.9907240Z           "evidence": [
2026-06-07T23:26:20.9907325Z             {
2026-06-07T23:26:20.9907458Z               "path": "crates/spt-net/src/net/pairing/meet.rs",
2026-06-07T23:26:20.9907545Z               "line": 44
2026-06-07T23:26:20.9907720Z             },
2026-06-07T23:26:20.9907807Z             {
2026-06-07T23:26:20.9907935Z               "path": "crates/spt-net/src/net/pairing/meet.rs",
2026-06-07T23:26:20.9908021Z               "line": 96
2026-06-07T23:26:20.9908102Z             },
2026-06-07T23:26:20.9908193Z             {
2026-06-07T23:26:20.9908316Z               "path": "crates/spt-net/src/net/pairing/meet.rs",
2026-06-07T23:26:20.9908412Z               "line": 107
2026-06-07T23:26:20.9908498Z             },
2026-06-07T23:26:20.9908588Z             {
2026-06-07T23:26:20.9908708Z               "path": "crates/spt-net/src/net/pairing/meet.rs",
2026-06-07T23:26:20.9908799Z               "line": 124
2026-06-07T23:26:20.9908893Z             },
2026-06-07T23:26:20.9908975Z             {
2026-06-07T23:26:20.9909100Z               "path": "crates/spt-net/src/net/pairing/meet.rs",
2026-06-07T23:26:20.9909180Z               "line": 155
2026-06-07T23:26:20.9909264Z             },
2026-06-07T23:26:20.9909357Z             {
2026-06-07T23:26:20.9909481Z               "path": "crates/spt-net/src/net/pairing/meet.rs",
2026-06-07T23:26:20.9909570Z               "line": 195
2026-06-07T23:26:20.9909655Z             },
2026-06-07T23:26:20.9909741Z             {
2026-06-07T23:26:20.9909866Z               "path": "crates/spt-net/src/net/pairing/meet.rs",
2026-06-07T23:26:20.9909951Z               "line": 251
2026-06-07T23:26:20.9910037Z             },
2026-06-07T23:26:20.9910119Z             {
2026-06-07T23:26:20.9910260Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-07T23:26:20.9910352Z               "line": 33
2026-06-07T23:26:20.9910438Z             },
2026-06-07T23:26:20.9910524Z             {
2026-06-07T23:26:20.9910657Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-07T23:26:20.9910753Z               "line": 45
2026-06-07T23:26:20.9910839Z             },
2026-06-07T23:26:20.9910923Z             {
2026-06-07T23:26:20.9911063Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-07T23:26:20.9911152Z               "line": 59
2026-06-07T23:26:20.9911243Z             },
2026-06-07T23:26:20.9911326Z             {
2026-06-07T23:26:20.9911448Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-07T23:26:20.9911539Z               "line": 359
2026-06-07T23:26:20.9911626Z             }
2026-06-07T23:26:20.9911712Z           ]
2026-06-07T23:26:20.9911796Z         },
2026-06-07T23:26:20.9911882Z         "int": {
2026-06-07T23:26:20.9911974Z           "complete": true,
2026-06-07T23:26:20.9912069Z           "evidence": [
2026-06-07T23:26:20.9912153Z             {
2026-06-07T23:26:20.9912277Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:20.9912372Z               "line": 790
2026-06-07T23:26:20.9912460Z             },
2026-06-07T23:26:20.9912551Z             {
2026-06-07T23:26:20.9912676Z               "path": "crates/spt-net/src/net/pairing/meet.rs",
2026-06-07T23:26:20.9912766Z               "line": 342
2026-06-07T23:26:20.9912846Z             }
2026-06-07T23:26:20.9912938Z           ]
2026-06-07T23:26:20.9913023Z         },
2026-06-07T23:26:20.9913109Z         "unit": {
2026-06-07T23:26:20.9913199Z           "complete": true,
2026-06-07T23:26:20.9913291Z           "evidence": [
2026-06-07T23:26:20.9913376Z             {
2026-06-07T23:26:20.9913500Z               "path": "crates/spt-net/src/net/pairing/meet.rs",
2026-06-07T23:26:20.9913592Z               "line": 293
2026-06-07T23:26:20.9913676Z             },
2026-06-07T23:26:20.9913762Z             {
2026-06-07T23:26:20.9913887Z               "path": "crates/spt-net/src/net/pairing/meet.rs",
2026-06-07T23:26:20.9913977Z               "line": 304
2026-06-07T23:26:20.9914063Z             },
2026-06-07T23:26:20.9914144Z             {
2026-06-07T23:26:20.9914358Z               "path": "crates/spt-net/src/net/pairing/meet.rs",
2026-06-07T23:26:20.9914449Z               "line": 406
2026-06-07T23:26:20.9914531Z             },
2026-06-07T23:26:20.9914616Z             {
2026-06-07T23:26:20.9914815Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-07T23:26:20.9914901Z               "line": 72
2026-06-07T23:26:20.9914989Z             },
2026-06-07T23:26:20.9915075Z             {
2026-06-07T23:26:20.9915214Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-07T23:26:20.9915300Z               "line": 82
2026-06-07T23:26:20.9915394Z             },
2026-06-07T23:26:20.9915471Z             {
2026-06-07T23:26:20.9915610Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-07T23:26:20.9915709Z               "line": 100
2026-06-07T23:26:20.9915795Z             },
2026-06-07T23:26:20.9915881Z             {
2026-06-07T23:26:20.9916009Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-07T23:26:20.9916105Z               "line": 110
2026-06-07T23:26:20.9916191Z             },
2026-06-07T23:26:20.9916277Z             {
2026-06-07T23:26:20.9916411Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-07T23:26:20.9916506Z               "line": 125
2026-06-07T23:26:20.9916591Z             },
2026-06-07T23:26:20.9916677Z             {
2026-06-07T23:26:20.9916803Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-07T23:26:20.9916886Z               "line": 896
2026-06-07T23:26:20.9917060Z             },
2026-06-07T23:26:20.9917150Z             {
2026-06-07T23:26:20.9917273Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-07T23:26:20.9917362Z               "line": 961
2026-06-07T23:26:20.9917444Z             },
2026-06-07T23:26:20.9917528Z             {
2026-06-07T23:26:20.9917651Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-07T23:26:20.9917742Z               "line": 1215
2026-06-07T23:26:20.9917838Z             }
2026-06-07T23:26:20.9917918Z           ]
2026-06-07T23:26:20.9918004Z         }
2026-06-07T23:26:20.9918086Z       }
2026-06-07T23:26:20.9918172Z     },
2026-06-07T23:26:20.9918256Z     {
2026-06-07T23:26:20.9918357Z       "id": "REQ-PAIR-6",
2026-06-07T23:26:20.9918614Z       "title": "Elevation-gated per-subnet code fetch (UAC/root or elevated agent; else authenticator app)",
2026-06-07T23:26:20.9918711Z       "requiredStages": [
2026-06-07T23:26:20.9918801Z         "impl",
2026-06-07T23:26:20.9918881Z         "unit"
2026-06-07T23:26:20.9918977Z       ],
2026-06-07T23:26:20.9919063Z       "stages": {
2026-06-07T23:26:20.9919148Z         "doc": {
2026-06-07T23:26:20.9919243Z           "complete": false,
2026-06-07T23:26:20.9919341Z           "evidence": []
2026-06-07T23:26:20.9919425Z         },
2026-06-07T23:26:20.9919511Z         "impl": {
2026-06-07T23:26:20.9919607Z           "complete": true,
2026-06-07T23:26:20.9919693Z           "evidence": [
2026-06-07T23:26:20.9919787Z             {
2026-06-07T23:26:20.9919892Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9919985Z               "line": 1972
2026-06-07T23:26:20.9920069Z             },
2026-06-07T23:26:20.9920158Z             {
2026-06-07T23:26:20.9920268Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9920360Z               "line": 2208
2026-06-07T23:26:20.9920450Z             },
2026-06-07T23:26:20.9920539Z             {
2026-06-07T23:26:20.9920650Z               "path": "crates/spt/src/elevation.rs",
2026-06-07T23:26:20.9920741Z               "line": 18
2026-06-07T23:26:20.9920825Z             },
2026-06-07T23:26:20.9920912Z             {
2026-06-07T23:26:20.9921017Z               "path": "crates/spt/src/elevation.rs",
2026-06-07T23:26:20.9921112Z               "line": 49
2026-06-07T23:26:20.9921193Z             },
2026-06-07T23:26:20.9921280Z             {
2026-06-07T23:26:20.9921389Z               "path": "crates/spt/src/elevation.rs",
2026-06-07T23:26:20.9921483Z               "line": 163
2026-06-07T23:26:20.9921689Z             }
2026-06-07T23:26:20.9921770Z           ]
2026-06-07T23:26:20.9921856Z         },
2026-06-07T23:26:20.9921942Z         "int": {
2026-06-07T23:26:20.9922036Z           "complete": false,
2026-06-07T23:26:20.9922219Z           "evidence": []
2026-06-07T23:26:20.9922305Z         },
2026-06-07T23:26:20.9922404Z         "unit": {
2026-06-07T23:26:20.9922491Z           "complete": true,
2026-06-07T23:26:20.9922582Z           "evidence": [
2026-06-07T23:26:20.9922671Z             {
2026-06-07T23:26:20.9922775Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9922870Z               "line": 6771
2026-06-07T23:26:20.9922955Z             },
2026-06-07T23:26:20.9923044Z             {
2026-06-07T23:26:20.9923145Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:20.9923241Z               "line": 6788
2026-06-07T23:26:20.9923331Z             },
2026-06-07T23:26:20.9923416Z             {
2026-06-07T23:26:20.9923522Z               "path": "crates/spt/src/elevation.rs",
2026-06-07T23:26:20.9923618Z               "line": 228
2026-06-07T23:26:20.9923702Z             },
2026-06-07T23:26:20.9923784Z             {
2026-06-07T23:26:20.9923894Z               "path": "crates/spt/src/elevation.rs",
2026-06-07T23:26:20.9923998Z               "line": 237
2026-06-07T23:26:20.9924079Z             }
2026-06-07T23:26:20.9924161Z           ]
2026-06-07T23:26:20.9924246Z         }
2026-06-07T23:26:20.9924331Z       }
2026-06-07T23:26:20.9924413Z     },
2026-06-07T23:26:20.9924500Z     {
2026-06-07T23:26:20.9924594Z       "id": "REQ-PAIR-7",
2026-06-07T23:26:20.9924748Z       "title": "Subnet icon (inline image metadata, GUI-only consumer)",
2026-06-07T23:26:20.9924848Z       "requiredStages": [],
2026-06-07T23:26:20.9924933Z       "stages": {
2026-06-07T23:26:20.9925019Z         "doc": {
2026-06-07T23:26:20.9925111Z           "complete": false,
2026-06-07T23:26:20.9925442Z           "evidence": []
2026-06-07T23:26:20.9925531Z         },
2026-06-07T23:26:20.9925611Z         "impl": {
2026-06-07T23:26:20.9925716Z           "complete": false,
2026-06-07T23:26:20.9925821Z           "evidence": []
2026-06-07T23:26:20.9925916Z         },
2026-06-07T23:26:20.9925992Z         "int": {
2026-06-07T23:26:20.9926089Z           "complete": false,
2026-06-07T23:26:20.9926179Z           "evidence": []
2026-06-07T23:26:20.9926254Z         },
2026-06-07T23:26:20.9926341Z         "unit": {
2026-06-07T23:26:20.9926427Z           "complete": false,
2026-06-07T23:26:20.9926504Z           "evidence": []
2026-06-07T23:26:20.9926579Z         }
2026-06-07T23:26:20.9926661Z       }
2026-06-07T23:26:20.9926752Z     },
2026-06-07T23:26:20.9926833Z     {
2026-06-07T23:26:20.9927141Z       "id": "REQ-PAIR-8",
2026-06-07T23:26:20.9928469Z       "title": "NTP TOTP offset: the pairing ceremony queries NTP at ceremony time (both sides) and applies the derived offset to the TOTP calculation in-process only; system-clock fallback when NTP is unreachable (offline LAN pairing unaffected — NTP failure never blocks a pairing that succeeds today); never sets the OS clock; no background sync loop (M8 decision 18; field trigger: enlyzeam clock >1 min off exceeds the ±1 window)",
2026-06-07T23:26:20.9928579Z       "requiredStages": [
2026-06-07T23:26:20.9928674Z         "impl",
2026-06-07T23:26:20.9928760Z         "unit"
2026-06-07T23:26:20.9928850Z       ],
2026-06-07T23:26:20.9928937Z       "stages": {
2026-06-07T23:26:20.9929027Z         "doc": {
2026-06-07T23:26:20.9929117Z           "complete": false,
2026-06-07T23:26:20.9929213Z           "evidence": []
2026-06-07T23:26:20.9929294Z         },
2026-06-07T23:26:20.9929389Z         "impl": {
2026-06-07T23:26:20.9929484Z           "complete": true,
2026-06-07T23:26:20.9929571Z           "evidence": [
2026-06-07T23:26:20.9929661Z             {
2026-06-07T23:26:20.9929790Z               "path": "crates/spt-daemon/src/pairhost.rs",
2026-06-07T23:26:20.9929881Z               "line": 466
2026-06-07T23:26:20.9929957Z             },
2026-06-07T23:26:20.9930157Z             {
2026-06-07T23:26:20.9930296Z               "path": "crates/spt-net/src/net/pairing/ntp.rs",
2026-06-07T23:26:20.9930385Z               "line": 22
2026-06-07T23:26:20.9930477Z             },
2026-06-07T23:26:20.9930563Z             {
2026-06-07T23:26:20.9930775Z               "path": "crates/spt-net/src/net/pairing/ntp.rs",
2026-06-07T23:26:20.9930867Z               "line": 76
2026-06-07T23:26:20.9930952Z             },
2026-06-07T23:26:20.9931043Z             {
2026-06-07T23:26:20.9931162Z               "path": "crates/spt-net/src/net/pairing/ntp.rs",
2026-06-07T23:26:20.9931258Z               "line": 127
2026-06-07T23:26:20.9931348Z             }
2026-06-07T23:26:20.9931438Z           ]
2026-06-07T23:26:20.9931520Z         },
2026-06-07T23:26:20.9931606Z         "int": {
2026-06-07T23:26:20.9931701Z           "complete": false,
2026-06-07T23:26:20.9931792Z           "evidence": []
2026-06-07T23:26:20.9931878Z         },
2026-06-07T23:26:20.9931963Z         "unit": {
2026-06-07T23:26:20.9932063Z           "complete": true,
2026-06-07T23:26:20.9932154Z           "evidence": [
2026-06-07T23:26:20.9932240Z             {
2026-06-07T23:26:20.9932363Z               "path": "crates/spt-net/src/net/pairing/ntp.rs",
2026-06-07T23:26:20.9932460Z               "line": 183
2026-06-07T23:26:20.9932554Z             },
2026-06-07T23:26:20.9932640Z             {
2026-06-07T23:26:20.9932756Z               "path": "crates/spt-net/src/net/pairing/ntp.rs",
2026-06-07T23:26:20.9932846Z               "line": 195
2026-06-07T23:26:20.9932935Z             },
2026-06-07T23:26:20.9933017Z             {
2026-06-07T23:26:20.9933142Z               "path": "crates/spt-net/src/net/pairing/ntp.rs",
2026-06-07T23:26:20.9933236Z               "line": 211
2026-06-07T23:26:20.9933321Z             },
2026-06-07T23:26:20.9933402Z             {
2026-06-07T23:26:20.9933525Z               "path": "crates/spt-net/src/net/pairing/ntp.rs",
2026-06-07T23:26:20.9933609Z               "line": 227
2026-06-07T23:26:20.9933690Z             }
2026-06-07T23:26:20.9933773Z           ]
2026-06-07T23:26:20.9933849Z         }
2026-06-07T23:26:20.9933933Z       }
2026-06-07T23:26:20.9934020Z     },
2026-06-07T23:26:20.9934106Z     {
2026-06-07T23:26:20.9934196Z       "id": "REQ-PRES-1",
2026-06-07T23:26:20.9935517Z       "title": "Presence resolution: the presence datum (last_active_node, last_active_endpoint, ts) gossiped subnet-wide via the agent-interaction heartbeat (rides registry distribution, visibility-gated) + one first-class most-recently-active resolution API consumed by notif first-fire, update-consent delivery, consent escalation, and shell wake resolution (M5 scope decision 1: resolution only — the PresenceChannel endpoint stays deferred)",
2026-06-07T23:26:20.9935618Z       "requiredStages": [
2026-06-07T23:26:20.9935709Z         "impl",
2026-06-07T23:26:20.9935797Z         "unit",
2026-06-07T23:26:20.9935883Z         "int"
2026-06-07T23:26:20.9935969Z       ],
2026-06-07T23:26:20.9936054Z       "stages": {
2026-06-07T23:26:20.9936143Z         "doc": {
2026-06-07T23:26:20.9936242Z           "complete": true,
2026-06-07T23:26:20.9936330Z           "evidence": [
2026-06-07T23:26:20.9936420Z             {
2026-06-07T23:26:20.9936519Z               "path": "docs/DEFERRED.md",
2026-06-07T23:26:20.9936615Z               "line": 11
2026-06-07T23:26:20.9936696Z             }
2026-06-07T23:26:20.9936791Z           ]
2026-06-07T23:26:20.9936882Z         },
2026-06-07T23:26:20.9937044Z         "impl": {
2026-06-07T23:26:20.9937139Z           "complete": true,
2026-06-07T23:26:20.9937226Z           "evidence": [
2026-06-07T23:26:20.9937312Z             {
2026-06-07T23:26:20.9937435Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-07T23:26:20.9937526Z               "line": 475
2026-06-07T23:26:20.9937617Z             },
2026-06-07T23:26:20.9937701Z             {
2026-06-07T23:26:20.9937826Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-07T23:26:20.9937913Z               "line": 527
2026-06-07T23:26:20.9937997Z             },
2026-06-07T23:26:20.9938180Z             {
2026-06-07T23:26:20.9938303Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9938397Z               "line": 181
2026-06-07T23:26:20.9938478Z             },
2026-06-07T23:26:20.9938653Z             {
2026-06-07T23:26:20.9938762Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9938857Z               "line": 207
2026-06-07T23:26:20.9938940Z             },
2026-06-07T23:26:20.9939029Z             {
2026-06-07T23:26:20.9939153Z               "path": "crates/spt-daemon/src/presence.rs",
2026-06-07T23:26:20.9939244Z               "line": 28
2026-06-07T23:26:20.9941274Z             },
2026-06-07T23:26:20.9941379Z             {
2026-06-07T23:26:20.9941522Z               "path": "crates/spt-daemon/src/presence.rs",
2026-06-07T23:26:20.9941622Z               "line": 105
2026-06-07T23:26:20.9941708Z             },
2026-06-07T23:26:20.9941794Z             {
2026-06-07T23:26:20.9941927Z               "path": "crates/spt-daemon/src/presence.rs",
2026-06-07T23:26:20.9942032Z               "line": 161
2026-06-07T23:26:20.9942118Z             },
2026-06-07T23:26:20.9942204Z             {
2026-06-07T23:26:20.9942328Z               "path": "crates/spt-daemon/src/presence.rs",
2026-06-07T23:26:20.9942424Z               "line": 180
2026-06-07T23:26:20.9942509Z             },
2026-06-07T23:26:20.9942599Z             {
2026-06-07T23:26:20.9942729Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9942823Z               "line": 346
2026-06-07T23:26:20.9942914Z             },
2026-06-07T23:26:20.9943001Z             {
2026-06-07T23:26:20.9943133Z               "path": "crates/spt-daemon/src/shellwake.rs",
2026-06-07T23:26:20.9943224Z               "line": 289
2026-06-07T23:26:20.9943311Z             },
2026-06-07T23:26:20.9943397Z             {
2026-06-07T23:26:20.9943514Z               "path": "crates/spt-daemon/src/shellwake.rs",
2026-06-07T23:26:20.9943611Z               "line": 336
2026-06-07T23:26:20.9943702Z             },
2026-06-07T23:26:20.9943786Z             {
2026-06-07T23:26:20.9943909Z               "path": "crates/spt-daemon/src/shellwake.rs",
2026-06-07T23:26:20.9944000Z               "line": 362
2026-06-07T23:26:20.9944089Z             },
2026-06-07T23:26:20.9944178Z             {
2026-06-07T23:26:20.9944299Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9944389Z               "line": 100
2026-06-07T23:26:20.9944475Z             }
2026-06-07T23:26:20.9944561Z           ]
2026-06-07T23:26:20.9944642Z         },
2026-06-07T23:26:20.9944733Z         "int": {
2026-06-07T23:26:20.9944827Z           "complete": true,
2026-06-07T23:26:20.9944924Z           "evidence": [
2026-06-07T23:26:20.9945009Z             {
2026-06-07T23:26:20.9945133Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-07T23:26:20.9945229Z               "line": 546
2026-06-07T23:26:20.9945314Z             },
2026-06-07T23:26:20.9945400Z             {
2026-06-07T23:26:20.9945524Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:20.9945615Z               "line": 675
2026-06-07T23:26:20.9945700Z             },
2026-06-07T23:26:20.9945786Z             {
2026-06-07T23:26:20.9945906Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:20.9946000Z               "line": 1068
2026-06-07T23:26:20.9946091Z             }
2026-06-07T23:26:20.9946173Z           ]
2026-06-07T23:26:20.9946264Z         },
2026-06-07T23:26:20.9946353Z         "unit": {
2026-06-07T23:26:20.9946443Z           "complete": true,
2026-06-07T23:26:20.9946538Z           "evidence": [
2026-06-07T23:26:20.9946619Z             {
2026-06-07T23:26:20.9946736Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:20.9946827Z               "line": 601
2026-06-07T23:26:20.9946913Z             },
2026-06-07T23:26:20.9947088Z             {
2026-06-07T23:26:20.9947214Z               "path": "crates/spt-daemon/src/presence.rs",
2026-06-07T23:26:20.9947309Z               "line": 237
2026-06-07T23:26:20.9947524Z             },
2026-06-07T23:26:20.9947609Z             {
2026-06-07T23:26:20.9947728Z               "path": "crates/spt-daemon/src/presence.rs",
2026-06-07T23:26:20.9947819Z               "line": 268
2026-06-07T23:26:20.9948009Z             },
2026-06-07T23:26:20.9948096Z             {
2026-06-07T23:26:20.9948215Z               "path": "crates/spt-daemon/src/presence.rs",
2026-06-07T23:26:20.9948305Z               "line": 304
2026-06-07T23:26:20.9948391Z             },
2026-06-07T23:26:20.9948478Z             {
2026-06-07T23:26:20.9948595Z               "path": "crates/spt-daemon/src/presence.rs",
2026-06-07T23:26:20.9948691Z               "line": 335
2026-06-07T23:26:20.9948778Z             },
2026-06-07T23:26:20.9948863Z             {
2026-06-07T23:26:20.9948991Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:20.9949081Z               "line": 953
2026-06-07T23:26:20.9949171Z             },
2026-06-07T23:26:20.9949255Z             {
2026-06-07T23:26:20.9949384Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:20.9949470Z               "line": 980
2026-06-07T23:26:20.9949560Z             }
2026-06-07T23:26:20.9949646Z           ]
2026-06-07T23:26:20.9949737Z         }
2026-06-07T23:26:20.9949828Z       }
2026-06-07T23:26:20.9949908Z     },
2026-06-07T23:26:20.9949994Z     {
2026-06-07T23:26:20.9950091Z       "id": "REQ-REACH-1",
2026-06-07T23:26:20.9950242Z       "title": "Off-node remote-drive detection + file transfer",
2026-06-07T23:26:20.9950338Z       "requiredStages": [
2026-06-07T23:26:20.9950434Z         "impl",
2026-06-07T23:26:20.9950519Z         "unit",
2026-06-07T23:26:20.9950610Z         "int"
2026-06-07T23:26:20.9950696Z       ],
2026-06-07T23:26:20.9950781Z       "stages": {
2026-06-07T23:26:20.9950867Z         "doc": {
2026-06-07T23:26:20.9950963Z           "complete": false,
2026-06-07T23:26:20.9951054Z           "evidence": []
2026-06-07T23:26:20.9951143Z         },
2026-06-07T23:26:20.9951234Z         "impl": {
2026-06-07T23:26:20.9951335Z           "complete": true,
2026-06-07T23:26:20.9951425Z           "evidence": [
2026-06-07T23:26:20.9951510Z             {
2026-06-07T23:26:20.9951631Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-07T23:26:20.9951726Z               "line": 140
2026-06-07T23:26:20.9951815Z             },
2026-06-07T23:26:20.9951900Z             {
2026-06-07T23:26:20.9952016Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-07T23:26:20.9952106Z               "line": 76
2026-06-07T23:26:20.9952191Z             },
2026-06-07T23:26:20.9952277Z             {
2026-06-07T23:26:20.9952388Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-07T23:26:20.9952487Z               "line": 222
2026-06-07T23:26:20.9952568Z             },
2026-06-07T23:26:20.9952654Z             {
2026-06-07T23:26:20.9952759Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-07T23:26:20.9952849Z               "line": 422
2026-06-07T23:26:20.9952941Z             },
2026-06-07T23:26:20.9953026Z             {
2026-06-07T23:26:20.9953135Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-07T23:26:20.9953227Z               "line": 529
2026-06-07T23:26:20.9953313Z             },
2026-06-07T23:26:20.9953398Z             {
2026-06-07T23:26:20.9953512Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-07T23:26:20.9953599Z               "line": 39
2026-06-07T23:26:20.9953688Z             },
2026-06-07T23:26:20.9953775Z             {
2026-06-07T23:26:20.9953886Z               "path": "crates/spt-store/src/info.rs",
2026-06-07T23:26:20.9953980Z               "line": 229
2026-06-07T23:26:20.9954060Z             },
2026-06-07T23:26:20.9954152Z             {
2026-06-07T23:26:20.9954262Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-07T23:26:20.9954356Z               "line": 88
2026-06-07T23:26:20.9954441Z             },
2026-06-07T23:26:20.9954527Z             {
2026-06-07T23:26:20.9954635Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-07T23:26:20.9954811Z               "line": 98
2026-06-07T23:26:20.9954897Z             },
2026-06-07T23:26:20.9954983Z             {
2026-06-07T23:26:20.9955106Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.9955264Z               "line": 210
2026-06-07T23:26:20.9955345Z             }
2026-06-07T23:26:20.9955445Z           ]
2026-06-07T23:26:20.9955527Z         },
2026-06-07T23:26:20.9955616Z         "int": {
2026-06-07T23:26:20.9955711Z           "complete": true,
2026-06-07T23:26:20.9955804Z           "evidence": [
2026-06-07T23:26:20.9955884Z             {
2026-06-07T23:26:20.9956022Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-07T23:26:20.9956151Z               "line": 404
2026-06-07T23:26:20.9956237Z             },
2026-06-07T23:26:20.9956322Z             {
2026-06-07T23:26:20.9956438Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-07T23:26:20.9956532Z               "line": 503
2026-06-07T23:26:20.9956628Z             },
2026-06-07T23:26:20.9956723Z             {
2026-06-07T23:26:20.9956857Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:20.9957031Z               "line": 901
2026-06-07T23:26:20.9957122Z             },
2026-06-07T23:26:20.9957211Z             {
2026-06-07T23:26:20.9957329Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:20.9957425Z               "line": 1196
2026-06-07T23:26:20.9957511Z             }
2026-06-07T23:26:20.9957597Z           ]
2026-06-07T23:26:20.9957682Z         },
2026-06-07T23:26:20.9957774Z         "unit": {
2026-06-07T23:26:20.9957869Z           "complete": true,
2026-06-07T23:26:20.9957959Z           "evidence": [
2026-06-07T23:26:20.9958041Z             {
2026-06-07T23:26:20.9958155Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-07T23:26:20.9958250Z               "line": 639
2026-06-07T23:26:20.9958331Z             },
2026-06-07T23:26:20.9958418Z             {
2026-06-07T23:26:20.9958532Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-07T23:26:20.9958627Z               "line": 660
2026-06-07T23:26:20.9958714Z             },
2026-06-07T23:26:20.9958798Z             {
2026-06-07T23:26:20.9958917Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-07T23:26:20.9959009Z               "line": 390
2026-06-07T23:26:20.9959099Z             },
2026-06-07T23:26:20.9959185Z             {
2026-06-07T23:26:20.9959300Z               "path": "crates/spt-daemon/tests/xfer.rs",
2026-06-07T23:26:20.9959391Z               "line": 92
2026-06-07T23:26:20.9959475Z             },
2026-06-07T23:26:20.9959565Z             {
2026-06-07T23:26:20.9959679Z               "path": "crates/spt-daemon/tests/xfer.rs",
2026-06-07T23:26:20.9959769Z               "line": 223
2026-06-07T23:26:20.9959853Z             },
2026-06-07T23:26:20.9959939Z             {
2026-06-07T23:26:20.9960050Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-07T23:26:20.9960135Z               "line": 96
2026-06-07T23:26:20.9960220Z             },
2026-06-07T23:26:20.9960302Z             {
2026-06-07T23:26:20.9960417Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-07T23:26:20.9960511Z               "line": 146
2026-06-07T23:26:20.9960598Z             },
2026-06-07T23:26:20.9960684Z             {
2026-06-07T23:26:20.9960792Z               "path": "crates/spt-store/src/info.rs",
2026-06-07T23:26:20.9960883Z               "line": 502
2026-06-07T23:26:20.9960970Z             },
2026-06-07T23:26:20.9961055Z             {
2026-06-07T23:26:20.9961170Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-07T23:26:20.9961256Z               "line": 118
2026-06-07T23:26:20.9961346Z             },
2026-06-07T23:26:20.9961427Z             {
2026-06-07T23:26:20.9961533Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-07T23:26:20.9961624Z               "line": 148
2026-06-07T23:26:20.9961713Z             },
2026-06-07T23:26:20.9961794Z             {
2026-06-07T23:26:20.9961910Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.9962109Z               "line": 602
2026-06-07T23:26:20.9962191Z             }
2026-06-07T23:26:20.9962282Z           ]
2026-06-07T23:26:20.9962361Z         }
2026-06-07T23:26:20.9962537Z       }
2026-06-07T23:26:20.9962623Z     },
2026-06-07T23:26:20.9962704Z     {
2026-06-07T23:26:20.9962799Z       "id": "REQ-REACH-2",
2026-06-07T23:26:20.9962948Z       "title": "Remote command execution (deferred, consent-gated)",
2026-06-07T23:26:20.9963047Z       "requiredStages": [],
2026-06-07T23:26:20.9963138Z       "stages": {
2026-06-07T23:26:20.9963224Z         "doc": {
2026-06-07T23:26:20.9963319Z           "complete": false,
2026-06-07T23:26:20.9963409Z           "evidence": []
2026-06-07T23:26:20.9963492Z         },
2026-06-07T23:26:20.9963581Z         "impl": {
2026-06-07T23:26:20.9963671Z           "complete": false,
2026-06-07T23:26:20.9963763Z           "evidence": []
2026-06-07T23:26:20.9963849Z         },
2026-06-07T23:26:20.9963934Z         "int": {
2026-06-07T23:26:20.9964034Z           "complete": false,
2026-06-07T23:26:20.9964126Z           "evidence": []
2026-06-07T23:26:20.9964206Z         },
2026-06-07T23:26:20.9964296Z         "unit": {
2026-06-07T23:26:20.9964387Z           "complete": false,
2026-06-07T23:26:20.9964489Z           "evidence": []
2026-06-07T23:26:20.9964563Z         }
2026-06-07T23:26:20.9964644Z       }
2026-06-07T23:26:20.9964722Z     },
2026-06-07T23:26:20.9964808Z     {
2026-06-07T23:26:20.9964901Z       "id": "REQ-REL-1",
2026-06-07T23:26:20.9965261Z       "title": "spt-releases publish-target repo: README public face, licensing split, Pages docs at the permanent lapse-proof canonical URL (ADR-0014)",
2026-06-07T23:26:20.9965361Z       "requiredStages": [
2026-06-07T23:26:20.9965448Z         "doc",
2026-06-07T23:26:20.9965753Z         "impl"
2026-06-07T23:26:20.9965839Z       ],
2026-06-07T23:26:20.9965923Z       "stages": {
2026-06-07T23:26:20.9966024Z         "doc": {
2026-06-07T23:26:20.9966163Z           "complete": true,
2026-06-07T23:26:20.9966262Z           "evidence": [
2026-06-07T23:26:20.9966349Z             {
2026-06-07T23:26:20.9966567Z               "path": "docs/adr/0014-publish-target-repo-and-lapse-proof-canonical-url.md",
2026-06-07T23:26:20.9966663Z               "line": 3
2026-06-07T23:26:20.9966745Z             }
2026-06-07T23:26:20.9966830Z           ]
2026-06-07T23:26:20.9966916Z         },
2026-06-07T23:26:20.9967069Z         "impl": {
2026-06-07T23:26:20.9967163Z           "complete": true,
2026-06-07T23:26:20.9967249Z           "evidence": [
2026-06-07T23:26:20.9967337Z             {
2026-06-07T23:26:20.9967502Z               "path": ".github/workflows/docs-publish.yml",
2026-06-07T23:26:20.9967606Z               "line": 11
2026-06-07T23:26:20.9967692Z             },
2026-06-07T23:26:20.9967776Z             {
2026-06-07T23:26:20.9967889Z               "path": "crates/xtask/src/main.rs",
2026-06-07T23:26:20.9967981Z               "line": 265
2026-06-07T23:26:20.9968067Z             }
2026-06-07T23:26:20.9968157Z           ]
2026-06-07T23:26:20.9968243Z         },
2026-06-07T23:26:20.9968329Z         "int": {
2026-06-07T23:26:20.9968424Z           "complete": false,
2026-06-07T23:26:20.9968514Z           "evidence": []
2026-06-07T23:26:20.9968601Z         },
2026-06-07T23:26:20.9968696Z         "unit": {
2026-06-07T23:26:20.9968786Z           "complete": false,
2026-06-07T23:26:20.9968877Z           "evidence": []
2026-06-07T23:26:20.9968959Z         }
2026-06-07T23:26:20.9969049Z       }
2026-06-07T23:26:20.9969134Z     },
2026-06-07T23:26:20.9969216Z     {
2026-06-07T23:26:20.9969312Z       "id": "REQ-REL-2",
2026-06-07T23:26:20.9969769Z       "title": "Release asset set consumable by the self-updater: platform binaries, SHA256SUMS, SignedRelease metadata, manifest schema, mock-adapter zip; tag-triggered cross-repo pipeline",
2026-06-07T23:26:20.9969875Z       "requiredStages": [
2026-06-07T23:26:20.9969970Z         "impl",
2026-06-07T23:26:20.9970054Z         "int"
2026-06-07T23:26:20.9970139Z       ],
2026-06-07T23:26:20.9970333Z       "stages": {
2026-06-07T23:26:20.9970423Z         "doc": {
2026-06-07T23:26:20.9970533Z           "complete": true,
2026-06-07T23:26:20.9970648Z           "evidence": [
2026-06-07T23:26:20.9970737Z             {
2026-06-07T23:26:20.9970934Z               "path": "docs/RELEASE-RUNBOOK.md",
2026-06-07T23:26:20.9971024Z               "line": 6
2026-06-07T23:26:20.9971110Z             }
2026-06-07T23:26:20.9971192Z           ]
2026-06-07T23:26:20.9971276Z         },
2026-06-07T23:26:20.9971367Z         "impl": {
2026-06-07T23:26:20.9971463Z           "complete": true,
2026-06-07T23:26:20.9971549Z           "evidence": [
2026-06-07T23:26:20.9971640Z             {
2026-06-07T23:26:20.9971753Z               "path": ".github/workflows/release.yml",
2026-06-07T23:26:20.9971845Z               "line": 16
2026-06-07T23:26:20.9971930Z             },
2026-06-07T23:26:20.9972020Z             {
2026-06-07T23:26:20.9972131Z               "path": "crates/xtask/src/main.rs",
2026-06-07T23:26:20.9972231Z               "line": 352
2026-06-07T23:26:20.9972312Z             },
2026-06-07T23:26:20.9972397Z             {
2026-06-07T23:26:20.9972503Z               "path": "crates/xtask/src/main.rs",
2026-06-07T23:26:20.9972592Z               "line": 424
2026-06-07T23:26:20.9972683Z             },
2026-06-07T23:26:20.9972770Z             {
2026-06-07T23:26:20.9972874Z               "path": "crates/xtask/src/main.rs",
2026-06-07T23:26:20.9972968Z               "line": 484
2026-06-07T23:26:20.9973049Z             },
2026-06-07T23:26:20.9973136Z             {
2026-06-07T23:26:20.9973236Z               "path": "crates/xtask/src/main.rs",
2026-06-07T23:26:20.9973330Z               "line": 591
2026-06-07T23:26:20.9973417Z             }
2026-06-07T23:26:20.9973498Z           ]
2026-06-07T23:26:20.9973588Z         },
2026-06-07T23:26:20.9973674Z         "int": {
2026-06-07T23:26:20.9973770Z           "complete": true,
2026-06-07T23:26:20.9973870Z           "evidence": [
2026-06-07T23:26:20.9973960Z             {
2026-06-07T23:26:20.9974095Z               "path": "crates/spt/tests/release_verify_e2e.rs",
2026-06-07T23:26:20.9974185Z               "line": 13
2026-06-07T23:26:20.9974270Z             }
2026-06-07T23:26:20.9974352Z           ]
2026-06-07T23:26:20.9974447Z         },
2026-06-07T23:26:20.9974532Z         "unit": {
2026-06-07T23:26:20.9974637Z           "complete": false,
2026-06-07T23:26:20.9974729Z           "evidence": []
2026-06-07T23:26:20.9974808Z         }
2026-06-07T23:26:20.9974899Z       }
2026-06-07T23:26:20.9974982Z     },
2026-06-07T23:26:20.9975067Z     {
2026-06-07T23:26:20.9975161Z       "id": "REQ-REL-3",
2026-06-07T23:26:20.9975570Z       "title": "Two-key release-signing trust anchor: primary + offline never-used recovery, both pubkeys embedded in the binary's trusted set, manual local signing (ADR-0015)",
2026-06-07T23:26:20.9975662Z       "requiredStages": [
2026-06-07T23:26:20.9975751Z         "impl",
2026-06-07T23:26:20.9975835Z         "unit"
2026-06-07T23:26:20.9975911Z       ],
2026-06-07T23:26:20.9976013Z       "stages": {
2026-06-07T23:26:20.9976098Z         "doc": {
2026-06-07T23:26:20.9976193Z           "complete": false,
2026-06-07T23:26:20.9976289Z           "evidence": []
2026-06-07T23:26:20.9976375Z         },
2026-06-07T23:26:20.9976469Z         "impl": {
2026-06-07T23:26:20.9976555Z           "complete": true,
2026-06-07T23:26:20.9976652Z           "evidence": [
2026-06-07T23:26:20.9976737Z             {
2026-06-07T23:26:20.9976855Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:20.9977032Z               "line": 224
2026-06-07T23:26:20.9977118Z             },
2026-06-07T23:26:20.9977204Z             {
2026-06-07T23:26:20.9977319Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:20.9977414Z               "line": 276
2026-06-07T23:26:20.9977499Z             },
2026-06-07T23:26:20.9977582Z             {
2026-06-07T23:26:20.9977695Z               "path": "crates/xtask/src/main.rs",
2026-06-07T23:26:20.9977781Z               "line": 329
2026-06-07T23:26:20.9977972Z             },
2026-06-07T23:26:20.9978057Z             {
2026-06-07T23:26:20.9978166Z               "path": "crates/xtask/src/main.rs",
2026-06-07T23:26:20.9978256Z               "line": 353
2026-06-07T23:26:20.9978445Z             },
2026-06-07T23:26:20.9978531Z             {
2026-06-07T23:26:20.9978636Z               "path": "crates/xtask/src/main.rs",
2026-06-07T23:26:20.9978727Z               "line": 392
2026-06-07T23:26:20.9978812Z             }
2026-06-07T23:26:20.9978903Z           ]
2026-06-07T23:26:20.9978989Z         },
2026-06-07T23:26:20.9979079Z         "int": {
2026-06-07T23:26:20.9979176Z           "complete": false,
2026-06-07T23:26:20.9979266Z           "evidence": []
2026-06-07T23:26:20.9979351Z         },
2026-06-07T23:26:20.9979437Z         "unit": {
2026-06-07T23:26:20.9979538Z           "complete": true,
2026-06-07T23:26:20.9979623Z           "evidence": [
2026-06-07T23:26:20.9979713Z             {
2026-06-07T23:26:20.9979838Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:20.9979933Z               "line": 977
2026-06-07T23:26:20.9980019Z             },
2026-06-07T23:26:20.9980100Z             {
2026-06-07T23:26:20.9980219Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:20.9980319Z               "line": 1036
2026-06-07T23:26:20.9980406Z             }
2026-06-07T23:26:20.9980492Z           ]
2026-06-07T23:26:20.9980576Z         }
2026-06-07T23:26:20.9980666Z       }
2026-06-07T23:26:20.9980752Z     },
2026-06-07T23:26:20.9980837Z     {
2026-06-07T23:26:20.9980936Z       "id": "REQ-SEAM-ACTIVITY",
2026-06-07T23:26:20.9981127Z       "title": "Activity/idle reported via api sentinels, not PTY quiescence",
2026-06-07T23:26:20.9981227Z       "requiredStages": [
2026-06-07T23:26:20.9981317Z         "impl",
2026-06-07T23:26:20.9981403Z         "unit"
2026-06-07T23:26:20.9981489Z       ],
2026-06-07T23:26:20.9981579Z       "stages": {
2026-06-07T23:26:20.9981665Z         "doc": {
2026-06-07T23:26:20.9981761Z           "complete": false,
2026-06-07T23:26:20.9981856Z           "evidence": []
2026-06-07T23:26:20.9981941Z         },
2026-06-07T23:26:20.9982038Z         "impl": {
2026-06-07T23:26:20.9982128Z           "complete": true,
2026-06-07T23:26:20.9982228Z           "evidence": [
2026-06-07T23:26:20.9982309Z             {
2026-06-07T23:26:20.9982434Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-07T23:26:20.9982528Z               "line": 18
2026-06-07T23:26:20.9982614Z             },
2026-06-07T23:26:20.9982706Z             {
2026-06-07T23:26:20.9982814Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-07T23:26:20.9982909Z               "line": 35
2026-06-07T23:26:20.9983002Z             },
2026-06-07T23:26:20.9983087Z             {
2026-06-07T23:26:20.9983195Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-07T23:26:20.9983287Z               "line": 72
2026-06-07T23:26:20.9983378Z             }
2026-06-07T23:26:20.9983462Z           ]
2026-06-07T23:26:20.9983557Z         },
2026-06-07T23:26:20.9983648Z         "int": {
2026-06-07T23:26:20.9983739Z           "complete": false,
2026-06-07T23:26:20.9983838Z           "evidence": []
2026-06-07T23:26:20.9983924Z         },
2026-06-07T23:26:20.9984011Z         "unit": {
2026-06-07T23:26:20.9984106Z           "complete": true,
2026-06-07T23:26:20.9984200Z           "evidence": [
2026-06-07T23:26:20.9984297Z             {
2026-06-07T23:26:20.9984407Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-07T23:26:20.9984501Z               "line": 214
2026-06-07T23:26:20.9984583Z             },
2026-06-07T23:26:20.9984674Z             {
2026-06-07T23:26:20.9984783Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-07T23:26:20.9984873Z               "line": 231
2026-06-07T23:26:20.9984960Z             },
2026-06-07T23:26:20.9985045Z             {
2026-06-07T23:26:20.9985159Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-07T23:26:20.9985246Z               "line": 240
2026-06-07T23:26:20.9985537Z             }
2026-06-07T23:26:20.9985618Z           ]
2026-06-07T23:26:20.9985707Z         }
2026-06-07T23:26:20.9985794Z       }
2026-06-07T23:26:20.9985876Z     },
2026-06-07T23:26:20.9985966Z     {
2026-06-07T23:26:20.9986069Z       "id": "REQ-SEAM-CAPABILITY",
2026-06-07T23:26:20.9986283Z       "title": "Hostable endpoint-types capability declaration",
2026-06-07T23:26:20.9986381Z       "requiredStages": [
2026-06-07T23:26:20.9986466Z         "impl",
2026-06-07T23:26:20.9986554Z         "unit"
2026-06-07T23:26:20.9986630Z       ],
2026-06-07T23:26:20.9986720Z       "stages": {
2026-06-07T23:26:20.9986796Z         "doc": {
2026-06-07T23:26:20.9986888Z           "complete": false,
2026-06-07T23:26:20.9987048Z           "evidence": []
2026-06-07T23:26:20.9987135Z         },
2026-06-07T23:26:20.9987226Z         "impl": {
2026-06-07T23:26:20.9987316Z           "complete": true,
2026-06-07T23:26:20.9987406Z           "evidence": [
2026-06-07T23:26:20.9987493Z             {
2026-06-07T23:26:20.9987622Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.9987712Z               "line": 404
2026-06-07T23:26:20.9987798Z             }
2026-06-07T23:26:20.9987888Z           ]
2026-06-07T23:26:20.9987969Z         },
2026-06-07T23:26:20.9988064Z         "int": {
2026-06-07T23:26:20.9988161Z           "complete": false,
2026-06-07T23:26:20.9988255Z           "evidence": []
2026-06-07T23:26:20.9988341Z         },
2026-06-07T23:26:20.9988428Z         "unit": {
2026-06-07T23:26:20.9988527Z           "complete": true,
2026-06-07T23:26:20.9988617Z           "evidence": [
2026-06-07T23:26:20.9988707Z             {
2026-06-07T23:26:20.9988821Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:20.9988915Z               "line": 641
2026-06-07T23:26:20.9989000Z             }
2026-06-07T23:26:20.9989086Z           ]
2026-06-07T23:26:20.9989173Z         }
2026-06-07T23:26:20.9989253Z       }
2026-06-07T23:26:20.9989343Z     },
2026-06-07T23:26:20.9989426Z     {
2026-06-07T23:26:20.9989535Z       "id": "REQ-SEAM-HISTORY",
2026-06-07T23:26:20.9989711Z       "title": "History subsystem (fetcher / locate-normalize / native store)",
2026-06-07T23:26:20.9989807Z       "requiredStages": [
2026-06-07T23:26:20.9989897Z         "impl",
2026-06-07T23:26:20.9989987Z         "unit",
2026-06-07T23:26:20.9990074Z         "int"
2026-06-07T23:26:20.9990159Z       ],
2026-06-07T23:26:20.9990250Z       "stages": {
2026-06-07T23:26:20.9990336Z         "doc": {
2026-06-07T23:26:20.9990436Z           "complete": false,
2026-06-07T23:26:20.9990531Z           "evidence": []
2026-06-07T23:26:20.9990622Z         },
2026-06-07T23:26:20.9990718Z         "impl": {
2026-06-07T23:26:20.9990807Z           "complete": true,
2026-06-07T23:26:20.9990903Z           "evidence": [
2026-06-07T23:26:20.9990985Z             {
2026-06-07T23:26:20.9991104Z               "path": "crates/spt-live/src/echo.rs",
2026-06-07T23:26:20.9991202Z               "line": 24
2026-06-07T23:26:20.9991288Z             },
2026-06-07T23:26:20.9991379Z             {
2026-06-07T23:26:20.9991496Z               "path": "crates/spt-live/src/history.rs",
2026-06-07T23:26:20.9991586Z               "line": 22
2026-06-07T23:26:20.9991672Z             }
2026-06-07T23:26:20.9991759Z           ]
2026-06-07T23:26:20.9991853Z         },
2026-06-07T23:26:20.9991939Z         "int": {
2026-06-07T23:26:20.9992035Z           "complete": true,
2026-06-07T23:26:20.9992125Z           "evidence": [
2026-06-07T23:26:20.9992210Z             {
2026-06-07T23:26:20.9992331Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-07T23:26:20.9992426Z               "line": 256
2026-06-07T23:26:20.9992511Z             }
2026-06-07T23:26:20.9992598Z           ]
2026-06-07T23:26:20.9992679Z         },
2026-06-07T23:26:20.9992769Z         "unit": {
2026-06-07T23:26:20.9992859Z           "complete": true,
2026-06-07T23:26:20.9992956Z           "evidence": [
2026-06-07T23:26:20.9993041Z             {
2026-06-07T23:26:20.9993155Z               "path": "crates/spt-live/src/echo.rs",
2026-06-07T23:26:20.9993351Z               "line": 167
2026-06-07T23:26:20.9993441Z             },
2026-06-07T23:26:20.9993523Z             {
2026-06-07T23:26:20.9993637Z               "path": "crates/spt-live/src/echo.rs",
2026-06-07T23:26:20.9993808Z               "line": 196
2026-06-07T23:26:20.9993895Z             },
2026-06-07T23:26:20.9993986Z             {
2026-06-07T23:26:20.9994088Z               "path": "crates/spt-live/src/echo.rs",
2026-06-07T23:26:20.9994184Z               "line": 216
2026-06-07T23:26:20.9994266Z             },
2026-06-07T23:26:20.9994356Z             {
2026-06-07T23:26:20.9994465Z               "path": "crates/spt-live/src/history.rs",
2026-06-07T23:26:20.9994557Z               "line": 199
2026-06-07T23:26:20.9994648Z             },
2026-06-07T23:26:20.9994727Z             {
2026-06-07T23:26:20.9994847Z               "path": "crates/spt-live/src/history.rs",
2026-06-07T23:26:20.9994938Z               "line": 219
2026-06-07T23:26:20.9995023Z             },
2026-06-07T23:26:20.9995114Z             {
2026-06-07T23:26:20.9995234Z               "path": "crates/spt-live/src/history.rs",
2026-06-07T23:26:20.9995324Z               "line": 244
2026-06-07T23:26:20.9995404Z             },
2026-06-07T23:26:20.9995496Z             {
2026-06-07T23:26:20.9995609Z               "path": "crates/spt-live/src/history.rs",
2026-06-07T23:26:20.9995700Z               "line": 269
2026-06-07T23:26:20.9995787Z             },
2026-06-07T23:26:20.9995873Z             {
2026-06-07T23:26:20.9995987Z               "path": "crates/spt-live/src/history.rs",
2026-06-07T23:26:20.9996072Z               "line": 290
2026-06-07T23:26:20.9996159Z             },
2026-06-07T23:26:20.9996244Z             {
2026-06-07T23:26:20.9996354Z               "path": "crates/spt-live/src/history.rs",
2026-06-07T23:26:20.9996445Z               "line": 317
2026-06-07T23:26:20.9996536Z             }
2026-06-07T23:26:20.9996624Z           ]
2026-06-07T23:26:20.9996705Z         }
2026-06-07T23:26:20.9996801Z       }
2026-06-07T23:26:20.9996890Z     },
2026-06-07T23:26:20.9997056Z     {
2026-06-07T23:26:20.9997157Z       "id": "REQ-SEAM-INJECT",
2026-06-07T23:26:20.9997318Z       "title": "inject-input methods configurable per activity-state",
2026-06-07T23:26:20.9997414Z       "requiredStages": [
2026-06-07T23:26:20.9997504Z         "impl",
2026-06-07T23:26:20.9997594Z         "unit"
2026-06-07T23:26:20.9997680Z       ],
2026-06-07T23:26:20.9997772Z       "stages": {
2026-06-07T23:26:20.9997857Z         "doc": {
2026-06-07T23:26:20.9997952Z           "complete": false,
2026-06-07T23:26:20.9998049Z           "evidence": []
2026-06-07T23:26:20.9998129Z         },
2026-06-07T23:26:20.9998219Z         "impl": {
2026-06-07T23:26:20.9998310Z           "complete": true,
2026-06-07T23:26:20.9998402Z           "evidence": [
2026-06-07T23:26:20.9998486Z             {
2026-06-07T23:26:20.9998606Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-07T23:26:20.9998702Z               "line": 19
2026-06-07T23:26:20.9998791Z             },
2026-06-07T23:26:20.9998887Z             {
2026-06-07T23:26:20.9998993Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-07T23:26:20.9999092Z               "line": 111
2026-06-07T23:26:20.9999177Z             }
2026-06-07T23:26:20.9999267Z           ]
2026-06-07T23:26:20.9999353Z         },
2026-06-07T23:26:20.9999442Z         "int": {
2026-06-07T23:26:20.9999537Z           "complete": false,
2026-06-07T23:26:20.9999632Z           "evidence": []
2026-06-07T23:26:20.9999724Z         },
2026-06-07T23:26:20.9999808Z         "unit": {
2026-06-07T23:26:20.9999903Z           "complete": true,
2026-06-07T23:26:20.9999995Z           "evidence": [
2026-06-07T23:26:21.0000086Z             {
2026-06-07T23:26:21.0000204Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-07T23:26:21.0000296Z               "line": 320
2026-06-07T23:26:21.0000381Z             },
2026-06-07T23:26:21.0000466Z             {
2026-06-07T23:26:21.0000581Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-07T23:26:21.0000772Z               "line": 340
2026-06-07T23:26:21.0000857Z             }
2026-06-07T23:26:21.0000945Z           ]
2026-06-07T23:26:21.0001024Z         }
2026-06-07T23:26:21.0001120Z       }
2026-06-07T23:26:21.0001201Z     },
2026-06-07T23:26:21.0001377Z     {
2026-06-07T23:26:21.0001482Z       "id": "REQ-SEAM-POSTSPAWN",
2026-06-07T23:26:21.0001617Z       "title": "post-spawn / api bind seam with boot nonce",
2026-06-07T23:26:21.0001715Z       "requiredStages": [
2026-06-07T23:26:21.0001800Z         "impl",
2026-06-07T23:26:21.0001892Z         "unit"
2026-06-07T23:26:21.0001981Z       ],
2026-06-07T23:26:21.0002070Z       "stages": {
2026-06-07T23:26:21.0002156Z         "doc": {
2026-06-07T23:26:21.0002252Z           "complete": false,
2026-06-07T23:26:21.0002342Z           "evidence": []
2026-06-07T23:26:21.0002427Z         },
2026-06-07T23:26:21.0002514Z         "impl": {
2026-06-07T23:26:21.0002605Z           "complete": true,
2026-06-07T23:26:21.0002699Z           "evidence": [
2026-06-07T23:26:21.0002795Z             {
2026-06-07T23:26:21.0002910Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:21.0003000Z               "line": 18
2026-06-07T23:26:21.0003085Z             },
2026-06-07T23:26:21.0003177Z             {
2026-06-07T23:26:21.0003286Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:21.0003386Z               "line": 309
2026-06-07T23:26:21.0003468Z             }
2026-06-07T23:26:21.0003554Z           ]
2026-06-07T23:26:21.0003643Z         },
2026-06-07T23:26:21.0003729Z         "int": {
2026-06-07T23:26:21.0003826Z           "complete": false,
2026-06-07T23:26:21.0003920Z           "evidence": []
2026-06-07T23:26:21.0004006Z         },
2026-06-07T23:26:21.0004092Z         "unit": {
2026-06-07T23:26:21.0004188Z           "complete": true,
2026-06-07T23:26:21.0004282Z           "evidence": [
2026-06-07T23:26:21.0004368Z             {
2026-06-07T23:26:21.0004479Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:21.0004573Z               "line": 559
2026-06-07T23:26:21.0004667Z             },
2026-06-07T23:26:21.0004754Z             {
2026-06-07T23:26:21.0004863Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:21.0004958Z               "line": 569
2026-06-07T23:26:21.0005049Z             }
2026-06-07T23:26:21.0005136Z           ]
2026-06-07T23:26:21.0005222Z         }
2026-06-07T23:26:21.0005311Z       }
2026-06-07T23:26:21.0005393Z     },
2026-06-07T23:26:21.0005479Z     {
2026-06-07T23:26:21.0007535Z       "id": "REQ-SEAM-PSYCHE",
2026-06-07T23:26:21.0007717Z       "title": "spawn-psyche seam (fresh + resume templates)",
2026-06-07T23:26:21.0007821Z       "requiredStages": [
2026-06-07T23:26:21.0007911Z         "impl",
2026-06-07T23:26:21.0007999Z         "unit",
2026-06-07T23:26:21.0008089Z         "int"
2026-06-07T23:26:21.0008173Z       ],
2026-06-07T23:26:21.0008265Z       "stages": {
2026-06-07T23:26:21.0008346Z         "doc": {
2026-06-07T23:26:21.0008446Z           "complete": false,
2026-06-07T23:26:21.0008550Z           "evidence": []
2026-06-07T23:26:21.0008633Z         },
2026-06-07T23:26:21.0008722Z         "impl": {
2026-06-07T23:26:21.0008817Z           "complete": true,
2026-06-07T23:26:21.0008909Z           "evidence": [
2026-06-07T23:26:21.0009000Z             {
2026-06-07T23:26:21.0009122Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-07T23:26:21.0009209Z               "line": 19
2026-06-07T23:26:21.0009296Z             },
2026-06-07T23:26:21.0009394Z             {
2026-06-07T23:26:21.0009504Z               "path": "crates/spt/src/api/live.rs",
2026-06-07T23:26:21.0009596Z               "line": 12
2026-06-07T23:26:21.0009680Z             },
2026-06-07T23:26:21.0009766Z             {
2026-06-07T23:26:21.0009880Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:21.0009975Z               "line": 209
2026-06-07T23:26:21.0010059Z             }
2026-06-07T23:26:21.0010144Z           ]
2026-06-07T23:26:21.0010231Z         },
2026-06-07T23:26:21.0010454Z         "int": {
2026-06-07T23:26:21.0010551Z           "complete": true,
2026-06-07T23:26:21.0010641Z           "evidence": [
2026-06-07T23:26:21.0010726Z             {
2026-06-07T23:26:21.0010851Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-07T23:26:21.0011031Z               "line": 255
2026-06-07T23:26:21.0011117Z             }
2026-06-07T23:26:21.0011204Z           ]
2026-06-07T23:26:21.0011294Z         },
2026-06-07T23:26:21.0011379Z         "unit": {
2026-06-07T23:26:21.0011471Z           "complete": true,
2026-06-07T23:26:21.0011566Z           "evidence": [
2026-06-07T23:26:21.0011647Z             {
2026-06-07T23:26:21.0011766Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-07T23:26:21.0011853Z               "line": 161
2026-06-07T23:26:21.0011942Z             },
2026-06-07T23:26:21.0012023Z             {
2026-06-07T23:26:21.0012134Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-07T23:26:21.0012228Z               "line": 168
2026-06-07T23:26:21.0012318Z             },
2026-06-07T23:26:21.0012403Z             {
2026-06-07T23:26:21.0012517Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-07T23:26:21.0012607Z               "line": 191
2026-06-07T23:26:21.0012696Z             },
2026-06-07T23:26:21.0012783Z             {
2026-06-07T23:26:21.0012884Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-07T23:26:21.0012974Z               "line": 106
2026-06-07T23:26:21.0013069Z             },
2026-06-07T23:26:21.0013165Z             {
2026-06-07T23:26:21.0013297Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-07T23:26:21.0013393Z               "line": 137
2026-06-07T23:26:21.0013479Z             },
2026-06-07T23:26:21.0013565Z             {
2026-06-07T23:26:21.0013674Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-07T23:26:21.0013766Z               "line": 161
2026-06-07T23:26:21.0013851Z             }
2026-06-07T23:26:21.0013937Z           ]
2026-06-07T23:26:21.0014018Z         }
2026-06-07T23:26:21.0014109Z       }
2026-06-07T23:26:21.0014194Z     },
2026-06-07T23:26:21.0014280Z     {
2026-06-07T23:26:21.0014377Z       "id": "REQ-SEAM-RESUME",
2026-06-07T23:26:21.0014557Z       "title": "resume-session seam (fresh-with-preload / continue-existing)",
2026-06-07T23:26:21.0014657Z       "requiredStages": [
2026-06-07T23:26:21.0014748Z         "impl",
2026-06-07T23:26:21.0014833Z         "unit"
2026-06-07T23:26:21.0014919Z       ],
2026-06-07T23:26:21.0015006Z       "stages": {
2026-06-07T23:26:21.0015091Z         "doc": {
2026-06-07T23:26:21.0015185Z           "complete": false,
2026-06-07T23:26:21.0015280Z           "evidence": []
2026-06-07T23:26:21.0015362Z         },
2026-06-07T23:26:21.0015448Z         "impl": {
2026-06-07T23:26:21.0015542Z           "complete": true,
2026-06-07T23:26:21.0015633Z           "evidence": [
2026-06-07T23:26:21.0015720Z             {
2026-06-07T23:26:21.0015834Z               "path": "crates/spt-live/src/resume.rs",
2026-06-07T23:26:21.0015929Z               "line": 19
2026-06-07T23:26:21.0016015Z             }
2026-06-07T23:26:21.0016101Z           ]
2026-06-07T23:26:21.0016186Z         },
2026-06-07T23:26:21.0016273Z         "int": {
2026-06-07T23:26:21.0016363Z           "complete": false,
2026-06-07T23:26:21.0016458Z           "evidence": []
2026-06-07T23:26:21.0016544Z         },
2026-06-07T23:26:21.0016630Z         "unit": {
2026-06-07T23:26:21.0016725Z           "complete": true,
2026-06-07T23:26:21.0016816Z           "evidence": [
2026-06-07T23:26:21.0016902Z             {
2026-06-07T23:26:21.0017131Z               "path": "crates/spt-live/src/resume.rs",
2026-06-07T23:26:21.0017222Z               "line": 179
2026-06-07T23:26:21.0017308Z             },
2026-06-07T23:26:21.0017392Z             {
2026-06-07T23:26:21.0017508Z               "path": "crates/spt-live/src/resume.rs",
2026-06-07T23:26:21.0017599Z               "line": 201
2026-06-07T23:26:21.0017688Z             },
2026-06-07T23:26:21.0017773Z             {
2026-06-07T23:26:21.0017883Z               "path": "crates/spt-live/src/resume.rs",
2026-06-07T23:26:21.0018075Z               "line": 222
2026-06-07T23:26:21.0018161Z             }
2026-06-07T23:26:21.0018249Z           ]
2026-06-07T23:26:21.0018644Z         }
2026-06-07T23:26:21.0018835Z       }
2026-06-07T23:26:21.0018949Z     },
2026-06-07T23:26:21.0019039Z     {
2026-06-07T23:26:21.0019145Z       "id": "REQ-SEAM-SPAWN",
2026-06-07T23:26:21.0019245Z       "title": "spawn-session seam",
2026-06-07T23:26:21.0019345Z       "requiredStages": [
2026-06-07T23:26:21.0019430Z         "impl",
2026-06-07T23:26:21.0019512Z         "unit"
2026-06-07T23:26:21.0019588Z       ],
2026-06-07T23:26:21.0019673Z       "stages": {
2026-06-07T23:26:21.0019759Z         "doc": {
2026-06-07T23:26:21.0019851Z           "complete": false,
2026-06-07T23:26:21.0019940Z           "evidence": []
2026-06-07T23:26:21.0020026Z         },
2026-06-07T23:26:21.0020113Z         "impl": {
2026-06-07T23:26:21.0020208Z           "complete": true,
2026-06-07T23:26:21.0020321Z           "evidence": [
2026-06-07T23:26:21.0020464Z             {
2026-06-07T23:26:21.0020614Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-07T23:26:21.0020723Z               "line": 20
2026-06-07T23:26:21.0020810Z             }
2026-06-07T23:26:21.0020896Z           ]
2026-06-07T23:26:21.0020981Z         },
2026-06-07T23:26:21.0021068Z         "int": {
2026-06-07T23:26:21.0021167Z           "complete": false,
2026-06-07T23:26:21.0021253Z           "evidence": []
2026-06-07T23:26:21.0021338Z         },
2026-06-07T23:26:21.0021431Z         "unit": {
2026-06-07T23:26:21.0021520Z           "complete": true,
2026-06-07T23:26:21.0021610Z           "evidence": [
2026-06-07T23:26:21.0021697Z             {
2026-06-07T23:26:21.0021820Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-07T23:26:21.0021911Z               "line": 435
2026-06-07T23:26:21.0021997Z             },
2026-06-07T23:26:21.0022084Z             {
2026-06-07T23:26:21.0022202Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-07T23:26:21.0022297Z               "line": 442
2026-06-07T23:26:21.0022384Z             },
2026-06-07T23:26:21.0022469Z             {
2026-06-07T23:26:21.0022583Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-07T23:26:21.0022675Z               "line": 452
2026-06-07T23:26:21.0022765Z             },
2026-06-07T23:26:21.0022850Z             {
2026-06-07T23:26:21.0022963Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-07T23:26:21.0023050Z               "line": 458
2026-06-07T23:26:21.0023143Z             },
2026-06-07T23:26:21.0023224Z             {
2026-06-07T23:26:21.0023343Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-07T23:26:21.0023434Z               "line": 483
2026-06-07T23:26:21.0023519Z             },
2026-06-07T23:26:21.0023605Z             {
2026-06-07T23:26:21.0023715Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-07T23:26:21.0023810Z               "line": 520
2026-06-07T23:26:21.0023905Z             }
2026-06-07T23:26:21.0023988Z           ]
2026-06-07T23:26:21.0024063Z         }
2026-06-07T23:26:21.0024148Z       }
2026-06-07T23:26:21.0024234Z     },
2026-06-07T23:26:21.0024317Z     {
2026-06-07T23:26:21.0024421Z       "id": "REQ-SEAM-UPDATE",
2026-06-07T23:26:21.0024593Z       "title": "Adapter-update avenue (file-pull / delegated command)",
2026-06-07T23:26:21.0024688Z       "requiredStages": [
2026-06-07T23:26:21.0024773Z         "impl",
2026-06-07T23:26:21.0024859Z         "unit"
2026-06-07T23:26:21.0024951Z       ],
2026-06-07T23:26:21.0025045Z       "stages": {
2026-06-07T23:26:21.0025131Z         "doc": {
2026-06-07T23:26:21.0025222Z           "complete": false,
2026-06-07T23:26:21.0025317Z           "evidence": []
2026-06-07T23:26:21.0025402Z         },
2026-06-07T23:26:21.0025493Z         "impl": {
2026-06-07T23:26:21.0025590Z           "complete": true,
2026-06-07T23:26:21.0025679Z           "evidence": [
2026-06-07T23:26:21.0025769Z             {
2026-06-07T23:26:21.0025898Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-07T23:26:21.0026069Z               "line": 28
2026-06-07T23:26:21.0026155Z             },
2026-06-07T23:26:21.0026242Z             {
2026-06-07T23:26:21.0026370Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-07T23:26:21.0026547Z               "line": 83
2026-06-07T23:26:21.0026633Z             }
2026-06-07T23:26:21.0026718Z           ]
2026-06-07T23:26:21.0026799Z         },
2026-06-07T23:26:21.0026885Z         "int": {
2026-06-07T23:26:21.0027066Z           "complete": false,
2026-06-07T23:26:21.0027162Z           "evidence": []
2026-06-07T23:26:21.0027243Z         },
2026-06-07T23:26:21.0027328Z         "unit": {
2026-06-07T23:26:21.0027419Z           "complete": true,
2026-06-07T23:26:21.0027515Z           "evidence": [
2026-06-07T23:26:21.0027600Z             {
2026-06-07T23:26:21.0027892Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-07T23:26:21.0027980Z               "line": 285
2026-06-07T23:26:21.0028068Z             },
2026-06-07T23:26:21.0028154Z             {
2026-06-07T23:26:21.0028272Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-07T23:26:21.0028357Z               "line": 296
2026-06-07T23:26:21.0028453Z             }
2026-06-07T23:26:21.0028542Z           ]
2026-06-07T23:26:21.0028650Z         }
2026-06-07T23:26:21.0028736Z       }
2026-06-07T23:26:21.0028823Z     },
2026-06-07T23:26:21.0028904Z     {
2026-06-07T23:26:21.0028998Z       "id": "REQ-SEC-1",
2026-06-07T23:26:21.0029370Z       "title": "Per-endpoint access whitelist: origin-node gate, stateful-firewall (reply/outbound exempt), node-now/user-later, outer gate before grants",
2026-06-07T23:26:21.0029466Z       "requiredStages": [
2026-06-07T23:26:21.0029557Z         "impl",
2026-06-07T23:26:21.0029642Z         "unit"
2026-06-07T23:26:21.0029724Z       ],
2026-06-07T23:26:21.0029815Z       "stages": {
2026-06-07T23:26:21.0029900Z         "doc": {
2026-06-07T23:26:21.0029991Z           "complete": false,
2026-06-07T23:26:21.0030087Z           "evidence": []
2026-06-07T23:26:21.0030171Z         },
2026-06-07T23:26:21.0030257Z         "impl": {
2026-06-07T23:26:21.0030349Z           "complete": true,
2026-06-07T23:26:21.0030439Z           "evidence": [
2026-06-07T23:26:21.0030529Z             {
2026-06-07T23:26:21.0030649Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-07T23:26:21.0030740Z               "line": 84
2026-06-07T23:26:21.0030824Z             },
2026-06-07T23:26:21.0030909Z             {
2026-06-07T23:26:21.0031024Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-07T23:26:21.0031118Z               "line": 114
2026-06-07T23:26:21.0031202Z             },
2026-06-07T23:26:21.0031288Z             {
2026-06-07T23:26:21.0031399Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-07T23:26:21.0031489Z               "line": 128
2026-06-07T23:26:21.0031574Z             },
2026-06-07T23:26:21.0031656Z             {
2026-06-07T23:26:21.0031776Z               "path": "crates/spt-store/src/access.rs",
2026-06-07T23:26:21.0031870Z               "line": 108
2026-06-07T23:26:21.0031957Z             },
2026-06-07T23:26:21.0032042Z             {
2026-06-07T23:26:21.0032156Z               "path": "crates/spt-store/src/access.rs",
2026-06-07T23:26:21.0032252Z               "line": 129
2026-06-07T23:26:21.0032343Z             },
2026-06-07T23:26:21.0032429Z             {
2026-06-07T23:26:21.0032538Z               "path": "crates/spt-store/src/access.rs",
2026-06-07T23:26:21.0032630Z               "line": 142
2026-06-07T23:26:21.0032714Z             },
2026-06-07T23:26:21.0032800Z             {
2026-06-07T23:26:21.0032911Z               "path": "crates/spt-store/src/access.rs",
2026-06-07T23:26:21.0033010Z               "line": 208
2026-06-07T23:26:21.0033096Z             },
2026-06-07T23:26:21.0033177Z             {
2026-06-07T23:26:21.0033288Z               "path": "crates/spt-store/src/access.rs",
2026-06-07T23:26:21.0033381Z               "line": 234
2026-06-07T23:26:21.0033581Z             },
2026-06-07T23:26:21.0033670Z             {
2026-06-07T23:26:21.0033779Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0033874Z               "line": 3313
2026-06-07T23:26:21.0033961Z             }
2026-06-07T23:26:21.0034155Z           ]
2026-06-07T23:26:21.0034238Z         },
2026-06-07T23:26:21.0034324Z         "int": {
2026-06-07T23:26:21.0034417Z           "complete": false,
2026-06-07T23:26:21.0034509Z           "evidence": []
2026-06-07T23:26:21.0034599Z         },
2026-06-07T23:26:21.0034680Z         "unit": {
2026-06-07T23:26:21.0034775Z           "complete": true,
2026-06-07T23:26:21.0034863Z           "evidence": [
2026-06-07T23:26:21.0034952Z             {
2026-06-07T23:26:21.0035066Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-07T23:26:21.0035158Z               "line": 140
2026-06-07T23:26:21.0035243Z             },
2026-06-07T23:26:21.0035324Z             {
2026-06-07T23:26:21.0035444Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-07T23:26:21.0035535Z               "line": 192
2026-06-07T23:26:21.0035624Z             },
2026-06-07T23:26:21.0035710Z             {
2026-06-07T23:26:21.0035826Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-07T23:26:21.0035919Z               "line": 233
2026-06-07T23:26:21.0036005Z             },
2026-06-07T23:26:21.0036093Z             {
2026-06-07T23:26:21.0036206Z               "path": "crates/spt-daemon/tests/access.rs",
2026-06-07T23:26:21.0036296Z               "line": 137
2026-06-07T23:26:21.0036391Z             },
2026-06-07T23:26:21.0036473Z             {
2026-06-07T23:26:21.0036587Z               "path": "crates/spt-store/src/access.rs",
2026-06-07T23:26:21.0036676Z               "line": 246
2026-06-07T23:26:21.0036763Z             },
2026-06-07T23:26:21.0036845Z             {
2026-06-07T23:26:21.0037103Z               "path": "crates/spt-store/src/access.rs",
2026-06-07T23:26:21.0037198Z               "line": 276
2026-06-07T23:26:21.0037278Z             },
2026-06-07T23:26:21.0037369Z             {
2026-06-07T23:26:21.0037488Z               "path": "crates/spt-store/src/access.rs",
2026-06-07T23:26:21.0037602Z               "line": 309
2026-06-07T23:26:21.0037684Z             },
2026-06-07T23:26:21.0037779Z             {
2026-06-07T23:26:21.0037888Z               "path": "crates/spt-store/src/access.rs",
2026-06-07T23:26:21.0037979Z               "line": 328
2026-06-07T23:26:21.0038066Z             },
2026-06-07T23:26:21.0038151Z             {
2026-06-07T23:26:21.0038265Z               "path": "crates/spt-store/src/access.rs",
2026-06-07T23:26:21.0038357Z               "line": 361
2026-06-07T23:26:21.0038442Z             },
2026-06-07T23:26:21.0038527Z             {
2026-06-07T23:26:21.0038638Z               "path": "crates/spt-store/src/access.rs",
2026-06-07T23:26:21.0038729Z               "line": 385
2026-06-07T23:26:21.0038813Z             },
2026-06-07T23:26:21.0038902Z             {
2026-06-07T23:26:21.0039008Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0039107Z               "line": 4871
2026-06-07T23:26:21.0039192Z             }
2026-06-07T23:26:21.0039277Z           ]
2026-06-07T23:26:21.0039364Z         }
2026-06-07T23:26:21.0039445Z       }
2026-06-07T23:26:21.0039539Z     },
2026-06-07T23:26:21.0039621Z     {
2026-06-07T23:26:21.0039717Z       "id": "REQ-SHELL-1",
2026-06-07T23:26:21.0040556Z       "title": "Shell hosting machinery: shell perch under the owner (type/owner/adapter_name/status/alias), broker-launched binary + api bind local-link handshake, the three channels (command durable, text+file durable + progress-queryable, sensory REST-only never spooled + dropped-unless-owner-live), owner exclusivity (CONTEXT Shell model)",
2026-06-07T23:26:21.0040656Z       "requiredStages": [
2026-06-07T23:26:21.0040745Z         "impl",
2026-06-07T23:26:21.0040831Z         "unit",
2026-06-07T23:26:21.0040919Z         "int"
2026-06-07T23:26:21.0041013Z       ],
2026-06-07T23:26:21.0041094Z       "stages": {
2026-06-07T23:26:21.0041314Z         "doc": {
2026-06-07T23:26:21.0041408Z           "complete": false,
2026-06-07T23:26:21.0041498Z           "evidence": []
2026-06-07T23:26:21.0041579Z         },
2026-06-07T23:26:21.0041669Z         "impl": {
2026-06-07T23:26:21.0041762Z           "complete": true,
2026-06-07T23:26:21.0041940Z           "evidence": [
2026-06-07T23:26:21.0042030Z             {
2026-06-07T23:26:21.0042149Z               "path": "crates/spt-daemon/src/linkhost.rs",
2026-06-07T23:26:21.0042246Z               "line": 94
2026-06-07T23:26:21.0042331Z             },
2026-06-07T23:26:21.0042420Z             {
2026-06-07T23:26:21.0042536Z               "path": "crates/spt-daemon/src/linkhost.rs",
2026-06-07T23:26:21.0042626Z               "line": 119
2026-06-07T23:26:21.0042712Z             },
2026-06-07T23:26:21.0042797Z             {
2026-06-07T23:26:21.0042922Z               "path": "crates/spt-daemon/src/shellchan.rs",
2026-06-07T23:26:21.0043008Z               "line": 27
2026-06-07T23:26:21.0043093Z             },
2026-06-07T23:26:21.0043185Z             {
2026-06-07T23:26:21.0043302Z               "path": "crates/spt-daemon/src/shellchan.rs",
2026-06-07T23:26:21.0043398Z               "line": 52
2026-06-07T23:26:21.0043481Z             },
2026-06-07T23:26:21.0043575Z             {
2026-06-07T23:26:21.0043694Z               "path": "crates/spt-daemon/src/shellchan.rs",
2026-06-07T23:26:21.0043781Z               "line": 132
2026-06-07T23:26:21.0043872Z             },
2026-06-07T23:26:21.0043955Z             {
2026-06-07T23:26:21.0044069Z               "path": "crates/spt-daemon/src/shellchan.rs",
2026-06-07T23:26:21.0044156Z               "line": 164
2026-06-07T23:26:21.0044245Z             },
2026-06-07T23:26:21.0044325Z             {
2026-06-07T23:26:21.0044444Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-07T23:26:21.0044531Z               "line": 22
2026-06-07T23:26:21.0044615Z             },
2026-06-07T23:26:21.0044706Z             {
2026-06-07T23:26:21.0044817Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-07T23:26:21.0044916Z               "line": 65
2026-06-07T23:26:21.0044997Z             },
2026-06-07T23:26:21.0045088Z             {
2026-06-07T23:26:21.0045207Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-07T23:26:21.0045302Z               "line": 76
2026-06-07T23:26:21.0045389Z             },
2026-06-07T23:26:21.0045474Z             {
2026-06-07T23:26:21.0045597Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-07T23:26:21.0045684Z               "line": 150
2026-06-07T23:26:21.0045771Z             },
2026-06-07T23:26:21.0045855Z             {
2026-06-07T23:26:21.0045970Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-07T23:26:21.0046062Z               "line": 209
2026-06-07T23:26:21.0046146Z             },
2026-06-07T23:26:21.0046227Z             {
2026-06-07T23:26:21.0046348Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-07T23:26:21.0046433Z               "line": 246
2026-06-07T23:26:21.0046522Z             },
2026-06-07T23:26:21.0046609Z             {
2026-06-07T23:26:21.0046730Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-07T23:26:21.0046813Z               "line": 267
2026-06-07T23:26:21.0046903Z             },
2026-06-07T23:26:21.0047086Z             {
2026-06-07T23:26:21.0047199Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-07T23:26:21.0047290Z               "line": 280
2026-06-07T23:26:21.0047371Z             },
2026-06-07T23:26:21.0047462Z             {
2026-06-07T23:26:21.0047570Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:21.0047668Z               "line": 189
2026-06-07T23:26:21.0047748Z             },
2026-06-07T23:26:21.0047833Z             {
2026-06-07T23:26:21.0047948Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:21.0048039Z               "line": 205
2026-06-07T23:26:21.0048115Z             },
2026-06-07T23:26:21.0048205Z             {
2026-06-07T23:26:21.0048321Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-07T23:26:21.0048529Z               "line": 41
2026-06-07T23:26:21.0048622Z             },
2026-06-07T23:26:21.0048729Z             {
2026-06-07T23:26:21.0048844Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-07T23:26:21.0049021Z               "line": 204
2026-06-07T23:26:21.0049110Z             },
2026-06-07T23:26:21.0049198Z             {
2026-06-07T23:26:21.0049312Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-07T23:26:21.0049406Z               "line": 156
2026-06-07T23:26:21.0049491Z             },
2026-06-07T23:26:21.0049573Z             {
2026-06-07T23:26:21.0049686Z               "path": "crates/spt/src/api/mod.rs",
2026-06-07T23:26:21.0049775Z               "line": 295
2026-06-07T23:26:21.0049861Z             },
2026-06-07T23:26:21.0049948Z             {
2026-06-07T23:26:21.0050061Z               "path": "crates/spt/src/api/mod.rs",
2026-06-07T23:26:21.0050152Z               "line": 345
2026-06-07T23:26:21.0050243Z             },
2026-06-07T23:26:21.0050329Z             {
2026-06-07T23:26:21.0050447Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:21.0050539Z               "line": 261
2026-06-07T23:26:21.0050629Z             },
2026-06-07T23:26:21.0050715Z             {
2026-06-07T23:26:21.0050825Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0050915Z               "line": 3811
2026-06-07T23:26:21.0051001Z             },
2026-06-07T23:26:21.0051086Z             {
2026-06-07T23:26:21.0051188Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0051282Z               "line": 3961
2026-06-07T23:26:21.0051363Z             },
2026-06-07T23:26:21.0051449Z             {
2026-06-07T23:26:21.0051550Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0051644Z               "line": 3998
2026-06-07T23:26:21.0051730Z             }
2026-06-07T23:26:21.0051818Z           ]
2026-06-07T23:26:21.0051907Z         },
2026-06-07T23:26:21.0051991Z         "int": {
2026-06-07T23:26:21.0052091Z           "complete": true,
2026-06-07T23:26:21.0052182Z           "evidence": [
2026-06-07T23:26:21.0052271Z             {
2026-06-07T23:26:21.0052399Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-07T23:26:21.0052496Z               "line": 695
2026-06-07T23:26:21.0052581Z             },
2026-06-07T23:26:21.0052666Z             {
2026-06-07T23:26:21.0052791Z               "path": "crates/spt-daemon/tests/shellchan.rs",
2026-06-07T23:26:21.0052881Z               "line": 8
2026-06-07T23:26:21.0052971Z             },
2026-06-07T23:26:21.0053057Z             {
2026-06-07T23:26:21.0053172Z               "path": "crates/spt-daemon/tests/shellchan.rs",
2026-06-07T23:26:21.0053267Z               "line": 49
2026-06-07T23:26:21.0053348Z             },
2026-06-07T23:26:21.0053435Z             {
2026-06-07T23:26:21.0053554Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:21.0053648Z               "line": 706
2026-06-07T23:26:21.0053740Z             },
2026-06-07T23:26:21.0053825Z             {
2026-06-07T23:26:21.0053939Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:21.0054031Z               "line": 1116
2026-06-07T23:26:21.0054126Z             },
2026-06-07T23:26:21.0054211Z             {
2026-06-07T23:26:21.0054331Z               "path": "crates/spt/tests/notify_shell_e2e.rs",
2026-06-07T23:26:21.0054427Z               "line": 17
2026-06-07T23:26:21.0054511Z             },
2026-06-07T23:26:21.0054596Z             {
2026-06-07T23:26:21.0054706Z               "path": "crates/spt/tests/shell_e2e.rs",
2026-06-07T23:26:21.0054800Z               "line": 14
2026-06-07T23:26:21.0054885Z             }
2026-06-07T23:26:21.0054970Z           ]
2026-06-07T23:26:21.0055058Z         },
2026-06-07T23:26:21.0055148Z         "unit": {
2026-06-07T23:26:21.0055242Z           "complete": true,
2026-06-07T23:26:21.0055333Z           "evidence": [
2026-06-07T23:26:21.0055419Z             {
2026-06-07T23:26:21.0055537Z               "path": "crates/spt-daemon/src/shellchan.rs",
2026-06-07T23:26:21.0055715Z               "line": 234
2026-06-07T23:26:21.0055806Z             },
2026-06-07T23:26:21.0055886Z             {
2026-06-07T23:26:21.0056011Z               "path": "crates/spt-daemon/src/shellchan.rs",
2026-06-07T23:26:21.0056162Z               "line": 267
2026-06-07T23:26:21.0056249Z             },
2026-06-07T23:26:21.0056336Z             {
2026-06-07T23:26:21.0056454Z               "path": "crates/spt-daemon/src/shellchan.rs",
2026-06-07T23:26:21.0056544Z               "line": 307
2026-06-07T23:26:21.0056631Z             },
2026-06-07T23:26:21.0056716Z             {
2026-06-07T23:26:21.0056830Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-07T23:26:21.0056917Z               "line": 519
2026-06-07T23:26:21.0057097Z             },
2026-06-07T23:26:21.0057179Z             {
2026-06-07T23:26:21.0057299Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-07T23:26:21.0057397Z               "line": 592
2026-06-07T23:26:21.0057492Z             },
2026-06-07T23:26:21.0057573Z             {
2026-06-07T23:26:21.0057693Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-07T23:26:21.0057788Z               "line": 736
2026-06-07T23:26:21.0057878Z             },
2026-06-07T23:26:21.0057965Z             {
2026-06-07T23:26:21.0058078Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:21.0058169Z               "line": 567
2026-06-07T23:26:21.0058251Z             },
2026-06-07T23:26:21.0058341Z             {
2026-06-07T23:26:21.0058460Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-07T23:26:21.0058552Z               "line": 352
2026-06-07T23:26:21.0058641Z             },
2026-06-07T23:26:21.0058727Z             {
2026-06-07T23:26:21.0058832Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0058923Z               "line": 5219
2026-06-07T23:26:21.0059018Z             },
2026-06-07T23:26:21.0059104Z             {
2026-06-07T23:26:21.0059215Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0059304Z               "line": 5541
2026-06-07T23:26:21.0059390Z             },
2026-06-07T23:26:21.0059477Z             {
2026-06-07T23:26:21.0059581Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0059675Z               "line": 5907
2026-06-07T23:26:21.0059758Z             }
2026-06-07T23:26:21.0059844Z           ]
2026-06-07T23:26:21.0059928Z         }
2026-06-07T23:26:21.0060013Z       }
2026-06-07T23:26:21.0060099Z     },
2026-06-07T23:26:21.0060185Z     {
2026-06-07T23:26:21.0060283Z       "id": "REQ-SHELL-2",
2026-06-07T23:26:21.0061776Z       "title": "Shell sleep/wake: link-break always closes the binary (pre-close instruction + termination timeout), ephemeral teardown vs persistent offline/relink, wake_command wake-watcher (offline-only, exit-opcode supervision, exponential backoff + give-up), state-keyed wake resolution (dormant/suspended/active-elsewhere; no-reachable refuses — spawn-anywhere branch deferred), spt shutdown owner cascade + api owner-shutdown gated by can_shutdown (CONTEXT Shell sleep/wake)",
2026-06-07T23:26:21.0061885Z       "requiredStages": [
2026-06-07T23:26:21.0061976Z         "impl",
2026-06-07T23:26:21.0062058Z         "unit",
2026-06-07T23:26:21.0062152Z         "int"
2026-06-07T23:26:21.0062238Z       ],
2026-06-07T23:26:21.0062325Z       "stages": {
2026-06-07T23:26:21.0062411Z         "doc": {
2026-06-07T23:26:21.0062504Z           "complete": false,
2026-06-07T23:26:21.0062599Z           "evidence": []
2026-06-07T23:26:21.0062681Z         },
2026-06-07T23:26:21.0062780Z         "impl": {
2026-06-07T23:26:21.0062874Z           "complete": true,
2026-06-07T23:26:21.0062964Z           "evidence": [
2026-06-07T23:26:21.0063051Z             {
2026-06-07T23:26:21.0063174Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-07T23:26:21.0063264Z               "line": 235
2026-06-07T23:26:21.0063351Z             },
2026-06-07T23:26:21.0063436Z             {
2026-06-07T23:26:21.0063666Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-07T23:26:21.0063751Z               "line": 389
2026-06-07T23:26:21.0063837Z             },
2026-06-07T23:26:21.0063923Z             {
2026-06-07T23:26:21.0064038Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-07T23:26:21.0064228Z               "line": 250
2026-06-07T23:26:21.0064319Z             },
2026-06-07T23:26:21.0064404Z             {
2026-06-07T23:26:21.0064523Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:21.0064615Z               "line": 310
2026-06-07T23:26:21.0064700Z             },
2026-06-07T23:26:21.0064786Z             {
2026-06-07T23:26:21.0064906Z               "path": "crates/spt-daemon/src/linkhost.rs",
2026-06-07T23:26:21.0064997Z               "line": 30
2026-06-07T23:26:21.0065081Z             },
2026-06-07T23:26:21.0065166Z             {
2026-06-07T23:26:21.0065285Z               "path": "crates/spt-daemon/src/linkhost.rs",
2026-06-07T23:26:21.0065374Z               "line": 150
2026-06-07T23:26:21.0065469Z             },
2026-06-07T23:26:21.0065555Z             {
2026-06-07T23:26:21.0065671Z               "path": "crates/spt-daemon/src/linkhost.rs",
2026-06-07T23:26:21.0065764Z               "line": 186
2026-06-07T23:26:21.0065855Z             },
2026-06-07T23:26:21.0065942Z             {
2026-06-07T23:26:21.0066060Z               "path": "crates/spt-daemon/src/linkhost.rs",
2026-06-07T23:26:21.0066155Z               "line": 345
2026-06-07T23:26:21.0066242Z             },
2026-06-07T23:26:21.0066327Z             {
2026-06-07T23:26:21.0066446Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:21.0066538Z               "line": 348
2026-06-07T23:26:21.0066623Z             },
2026-06-07T23:26:21.0066709Z             {
2026-06-07T23:26:21.0066834Z               "path": "crates/spt-daemon/src/shellchan.rs",
2026-06-07T23:26:21.0066929Z               "line": 115
2026-06-07T23:26:21.0067109Z             },
2026-06-07T23:26:21.0067196Z             {
2026-06-07T23:26:21.0067318Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-07T23:26:21.0067415Z               "line": 120
2026-06-07T23:26:21.0067496Z             },
2026-06-07T23:26:21.0067586Z             {
2026-06-07T23:26:21.0067705Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-07T23:26:21.0067797Z               "line": 360
2026-06-07T23:26:21.0067887Z             },
2026-06-07T23:26:21.0067971Z             {
2026-06-07T23:26:21.0068090Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-07T23:26:21.0068182Z               "line": 464
2026-06-07T23:26:21.0068276Z             },
2026-06-07T23:26:21.0068367Z             {
2026-06-07T23:26:21.0068483Z               "path": "crates/spt-daemon/src/shellwake.rs",
2026-06-07T23:26:21.0068573Z               "line": 24
2026-06-07T23:26:21.0068658Z             },
2026-06-07T23:26:21.0068744Z             {
2026-06-07T23:26:21.0068863Z               "path": "crates/spt-daemon/src/shellwake.rs",
2026-06-07T23:26:21.0068958Z               "line": 76
2026-06-07T23:26:21.0069044Z             },
2026-06-07T23:26:21.0069126Z             {
2026-06-07T23:26:21.0069245Z               "path": "crates/spt-daemon/src/shellwake.rs",
2026-06-07T23:26:21.0069339Z               "line": 154
2026-06-07T23:26:21.0069431Z             },
2026-06-07T23:26:21.0069521Z             {
2026-06-07T23:26:21.0069635Z               "path": "crates/spt-daemon/src/shellwake.rs",
2026-06-07T23:26:21.0069732Z               "line": 177
2026-06-07T23:26:21.0069821Z             },
2026-06-07T23:26:21.0069907Z             {
2026-06-07T23:26:21.0070023Z               "path": "crates/spt-daemon/src/shellwake.rs",
2026-06-07T23:26:21.0070118Z               "line": 273
2026-06-07T23:26:21.0070207Z             },
2026-06-07T23:26:21.0070289Z             {
2026-06-07T23:26:21.0070405Z               "path": "crates/spt-daemon/src/shellwake.rs",
2026-06-07T23:26:21.0070493Z               "line": 450
2026-06-07T23:26:21.0070583Z             },
2026-06-07T23:26:21.0070773Z             {
2026-06-07T23:26:21.0070891Z               "path": "crates/spt-daemon/src/shellwake.rs",
2026-06-07T23:26:21.0070981Z               "line": 532
2026-06-07T23:26:21.0071068Z             },
2026-06-07T23:26:21.0071153Z             {
2026-06-07T23:26:21.0071350Z               "path": "crates/spt-net/src/net/shelllink.rs",
2026-06-07T23:26:21.0071445Z               "line": 27
2026-06-07T23:26:21.0071529Z             },
2026-06-07T23:26:21.0071616Z             {
2026-06-07T23:26:21.0071730Z               "path": "crates/spt-net/src/net/shelllink.rs",
2026-06-07T23:26:21.0071821Z               "line": 43
2026-06-07T23:26:21.0071931Z             },
2026-06-07T23:26:21.0072017Z             {
2026-06-07T23:26:21.0072135Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:21.0072226Z               "line": 323
2026-06-07T23:26:21.0072313Z             },
2026-06-07T23:26:21.0072402Z             {
2026-06-07T23:26:21.0072507Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0072604Z               "line": 1194
2026-06-07T23:26:21.0072689Z             },
2026-06-07T23:26:21.0072774Z             {
2026-06-07T23:26:21.0072875Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0072976Z               "line": 3825
2026-06-07T23:26:21.0073098Z             },
2026-06-07T23:26:21.0073183Z             {
2026-06-07T23:26:21.0073293Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0073381Z               "line": 3886
2026-06-07T23:26:21.0073471Z             },
2026-06-07T23:26:21.0073553Z             {
2026-06-07T23:26:21.0073659Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0073748Z               "line": 3914
2026-06-07T23:26:21.0073834Z             },
2026-06-07T23:26:21.0073921Z             {
2026-06-07T23:26:21.0074025Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0076024Z               "line": 3968
2026-06-07T23:26:21.0076130Z             },
2026-06-07T23:26:21.0076216Z             {
2026-06-07T23:26:21.0076338Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0076430Z               "line": 4084
2026-06-07T23:26:21.0076516Z             },
2026-06-07T23:26:21.0076597Z             {
2026-06-07T23:26:21.0076706Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0076798Z               "line": 4137
2026-06-07T23:26:21.0076887Z             },
2026-06-07T23:26:21.0077059Z             {
2026-06-07T23:26:21.0077174Z               "path": "crates/spt/src/wansend.rs",
2026-06-07T23:26:21.0077264Z               "line": 298
2026-06-07T23:26:21.0077345Z             },
2026-06-07T23:26:21.0077432Z             {
2026-06-07T23:26:21.0077535Z               "path": "crates/spt/src/wansend.rs",
2026-06-07T23:26:21.0077631Z               "line": 339
2026-06-07T23:26:21.0077714Z             }
2026-06-07T23:26:21.0077799Z           ]
2026-06-07T23:26:21.0077883Z         },
2026-06-07T23:26:21.0077970Z         "int": {
2026-06-07T23:26:21.0078066Z           "complete": true,
2026-06-07T23:26:21.0078160Z           "evidence": [
2026-06-07T23:26:21.0078246Z             {
2026-06-07T23:26:21.0078376Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-07T23:26:21.0078466Z               "line": 688
2026-06-07T23:26:21.0078555Z             },
2026-06-07T23:26:21.0078640Z             {
2026-06-07T23:26:21.0078766Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:21.0078855Z               "line": 706
2026-06-07T23:26:21.0078941Z             },
2026-06-07T23:26:21.0079023Z             {
2026-06-07T23:26:21.0079147Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:21.0079236Z               "line": 1116
2026-06-07T23:26:21.0079319Z             },
2026-06-07T23:26:21.0079404Z             {
2026-06-07T23:26:21.0079537Z               "path": "crates/spt/tests/shell_sleepwake_e2e.rs",
2026-06-07T23:26:21.0079624Z               "line": 18
2026-06-07T23:26:21.0079701Z             }
2026-06-07T23:26:21.0079781Z           ]
2026-06-07T23:26:21.0079977Z         },
2026-06-07T23:26:21.0080062Z         "unit": {
2026-06-07T23:26:21.0080152Z           "complete": true,
2026-06-07T23:26:21.0080243Z           "evidence": [
2026-06-07T23:26:21.0080326Z             {
2026-06-07T23:26:21.0080611Z               "path": "crates/spt-daemon/src/linkhost.rs",
2026-06-07T23:26:21.0080701Z               "line": 429
2026-06-07T23:26:21.0080786Z             },
2026-06-07T23:26:21.0080868Z             {
2026-06-07T23:26:21.0080993Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-07T23:26:21.0081081Z               "line": 794
2026-06-07T23:26:21.0081167Z             },
2026-06-07T23:26:21.0081253Z             {
2026-06-07T23:26:21.0081370Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-07T23:26:21.0081460Z               "line": 625
2026-06-07T23:26:21.0081542Z             },
2026-06-07T23:26:21.0081623Z             {
2026-06-07T23:26:21.0081746Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-07T23:26:21.0081837Z               "line": 674
2026-06-07T23:26:21.0081924Z             },
2026-06-07T23:26:21.0082010Z             {
2026-06-07T23:26:21.0082123Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-07T23:26:21.0082210Z               "line": 698
2026-06-07T23:26:21.0082304Z             },
2026-06-07T23:26:21.0082390Z             {
2026-06-07T23:26:21.0082501Z               "path": "crates/spt-daemon/src/shellwake.rs",
2026-06-07T23:26:21.0082596Z               "line": 596
2026-06-07T23:26:21.0082677Z             },
2026-06-07T23:26:21.0082767Z             {
2026-06-07T23:26:21.0082883Z               "path": "crates/spt-daemon/src/shellwake.rs",
2026-06-07T23:26:21.0082972Z               "line": 617
2026-06-07T23:26:21.0083053Z             },
2026-06-07T23:26:21.0083140Z             {
2026-06-07T23:26:21.0083258Z               "path": "crates/spt-daemon/src/shellwake.rs",
2026-06-07T23:26:21.0083344Z               "line": 653
2026-06-07T23:26:21.0083430Z             },
2026-06-07T23:26:21.0083517Z             {
2026-06-07T23:26:21.0083644Z               "path": "crates/spt-daemon/src/shellwake.rs",
2026-06-07T23:26:21.0083733Z               "line": 707
2026-06-07T23:26:21.0083820Z             },
2026-06-07T23:26:21.0083905Z             {
2026-06-07T23:26:21.0084022Z               "path": "crates/spt-daemon/src/shellwake.rs",
2026-06-07T23:26:21.0084113Z               "line": 725
2026-06-07T23:26:21.0084200Z             },
2026-06-07T23:26:21.0084284Z             {
2026-06-07T23:26:21.0084394Z               "path": "crates/spt-daemon/src/shellwake.rs",
2026-06-07T23:26:21.0084486Z               "line": 759
2026-06-07T23:26:21.0084571Z             },
2026-06-07T23:26:21.0084651Z             {
2026-06-07T23:26:21.0084767Z               "path": "crates/spt-daemon/src/shellwake.rs",
2026-06-07T23:26:21.0084857Z               "line": 834
2026-06-07T23:26:21.0084942Z             },
2026-06-07T23:26:21.0085028Z             {
2026-06-07T23:26:21.0085148Z               "path": "crates/spt-net/src/net/shelllink.rs",
2026-06-07T23:26:21.0085243Z               "line": 80
2026-06-07T23:26:21.0085324Z             },
2026-06-07T23:26:21.0085411Z             {
2026-06-07T23:26:21.0085520Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0085615Z               "line": 4698
2026-06-07T23:26:21.0085706Z             },
2026-06-07T23:26:21.0085788Z             {
2026-06-07T23:26:21.0085896Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0085982Z               "line": 5296
2026-06-07T23:26:21.0086069Z             },
2026-06-07T23:26:21.0086154Z             {
2026-06-07T23:26:21.0086253Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0086343Z               "line": 5366
2026-06-07T23:26:21.0086429Z             },
2026-06-07T23:26:21.0086513Z             {
2026-06-07T23:26:21.0086608Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0086699Z               "line": 5404
2026-06-07T23:26:21.0086786Z             }
2026-06-07T23:26:21.0086866Z           ]
2026-06-07T23:26:21.0087109Z         }
2026-06-07T23:26:21.0087185Z       }
2026-06-07T23:26:21.0087271Z     },
2026-06-07T23:26:21.0087353Z     {
2026-06-07T23:26:21.0087447Z       "id": "REQ-START-1",
2026-06-07T23:26:21.0087639Z       "title": "Adapters never resolve SPT_HOME; binary on PATH; api bridging only",
2026-06-07T23:26:21.0087829Z       "requiredStages": [
2026-06-07T23:26:21.0087915Z         "impl",
2026-06-07T23:26:21.0088002Z         "unit"
2026-06-07T23:26:21.0088086Z       ],
2026-06-07T23:26:21.0088177Z       "stages": {
2026-06-07T23:26:21.0088264Z         "doc": {
2026-06-07T23:26:21.0088359Z           "complete": false,
2026-06-07T23:26:21.0088443Z           "evidence": []
2026-06-07T23:26:21.0088530Z         },
2026-06-07T23:26:21.0088617Z         "impl": {
2026-06-07T23:26:21.0088712Z           "complete": true,
2026-06-07T23:26:21.0088801Z           "evidence": [
2026-06-07T23:26:21.0088883Z             {
2026-06-07T23:26:21.0089003Z               "path": "crates/spt-store/src/seed.rs",
2026-06-07T23:26:21.0089096Z               "line": 16
2026-06-07T23:26:21.0089182Z             }
2026-06-07T23:26:21.0089263Z           ]
2026-06-07T23:26:21.0089349Z         },
2026-06-07T23:26:21.0089434Z         "int": {
2026-06-07T23:26:21.0089535Z           "complete": false,
2026-06-07T23:26:21.0089626Z           "evidence": []
2026-06-07T23:26:21.0089712Z         },
2026-06-07T23:26:21.0089801Z         "unit": {
2026-06-07T23:26:21.0089893Z           "complete": true,
2026-06-07T23:26:21.0089978Z           "evidence": [
2026-06-07T23:26:21.0090064Z             {
2026-06-07T23:26:21.0090174Z               "path": "crates/spt-store/src/seed.rs",
2026-06-07T23:26:21.0090266Z               "line": 43
2026-06-07T23:26:21.0090351Z             },
2026-06-07T23:26:21.0090436Z             {
2026-06-07T23:26:21.0090542Z               "path": "crates/spt-store/src/seed.rs",
2026-06-07T23:26:21.0090632Z               "line": 59
2026-06-07T23:26:21.0090731Z             }
2026-06-07T23:26:21.0090847Z           ]
2026-06-07T23:26:21.0090928Z         }
2026-06-07T23:26:21.0091013Z       }
2026-06-07T23:26:21.0091099Z     },
2026-06-07T23:26:21.0091171Z     {
2026-06-07T23:26:21.0091257Z       "id": "REQ-START-2",
2026-06-07T23:26:21.0091399Z       "title": "Harness-hosted startup: api seed then listen",
2026-06-07T23:26:21.0091491Z       "requiredStages": [
2026-06-07T23:26:21.0091576Z         "impl",
2026-06-07T23:26:21.0091675Z         "unit",
2026-06-07T23:26:21.0091780Z         "int"
2026-06-07T23:26:21.0091866Z       ],
2026-06-07T23:26:21.0091954Z       "stages": {
2026-06-07T23:26:21.0092040Z         "doc": {
2026-06-07T23:26:21.0092130Z           "complete": false,
2026-06-07T23:26:21.0092221Z           "evidence": []
2026-06-07T23:26:21.0092301Z         },
2026-06-07T23:26:21.0092387Z         "impl": {
2026-06-07T23:26:21.0092480Z           "complete": true,
2026-06-07T23:26:21.0092570Z           "evidence": [
2026-06-07T23:26:21.0092654Z             {
2026-06-07T23:26:21.0092770Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:21.0092864Z               "line": 16
2026-06-07T23:26:21.0092950Z             },
2026-06-07T23:26:21.0093031Z             {
2026-06-07T23:26:21.0093142Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:21.0093237Z               "line": 100
2026-06-07T23:26:21.0093322Z             },
2026-06-07T23:26:21.0093409Z             {
2026-06-07T23:26:21.0093522Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:21.0093608Z               "line": 208
2026-06-07T23:26:21.0093695Z             }
2026-06-07T23:26:21.0093777Z           ]
2026-06-07T23:26:21.0093861Z         },
2026-06-07T23:26:21.0093942Z         "int": {
2026-06-07T23:26:21.0094034Z           "complete": true,
2026-06-07T23:26:21.0094124Z           "evidence": [
2026-06-07T23:26:21.0094208Z             {
2026-06-07T23:26:21.0094322Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-07T23:26:21.0094413Z               "line": 182
2026-06-07T23:26:21.0094596Z             }
2026-06-07T23:26:21.0094678Z           ]
2026-06-07T23:26:21.0094765Z         },
2026-06-07T23:26:21.0094849Z         "unit": {
2026-06-07T23:26:21.0094939Z           "complete": true,
2026-06-07T23:26:21.0095027Z           "evidence": [
2026-06-07T23:26:21.0095193Z             {
2026-06-07T23:26:21.0095303Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:21.0095389Z               "line": 421
2026-06-07T23:26:21.0095474Z             },
2026-06-07T23:26:21.0095560Z             {
2026-06-07T23:26:21.0095666Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:21.0095760Z               "line": 454
2026-06-07T23:26:21.0095841Z             }
2026-06-07T23:26:21.0095928Z           ]
2026-06-07T23:26:21.0096009Z         }
2026-06-07T23:26:21.0096094Z       }
2026-06-07T23:26:21.0096175Z     },
2026-06-07T23:26:21.0096261Z     {
2026-06-07T23:26:21.0096352Z       "id": "REQ-START-3",
2026-06-07T23:26:21.0096519Z       "title": "spt-hosted startup: spawn-session then api bind (no file)",
2026-06-07T23:26:21.0096620Z       "requiredStages": [
2026-06-07T23:26:21.0096705Z         "impl",
2026-06-07T23:26:21.0096789Z         "unit",
2026-06-07T23:26:21.0096875Z         "int"
2026-06-07T23:26:21.0097040Z       ],
2026-06-07T23:26:21.0097130Z       "stages": {
2026-06-07T23:26:21.0097211Z         "doc": {
2026-06-07T23:26:21.0097308Z           "complete": false,
2026-06-07T23:26:21.0097393Z           "evidence": []
2026-06-07T23:26:21.0097478Z         },
2026-06-07T23:26:21.0097564Z         "impl": {
2026-06-07T23:26:21.0097655Z           "complete": true,
2026-06-07T23:26:21.0097745Z           "evidence": [
2026-06-07T23:26:21.0097826Z             {
2026-06-07T23:26:21.0097951Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-07T23:26:21.0098037Z               "line": 23
2026-06-07T23:26:21.0098121Z             },
2026-06-07T23:26:21.0098204Z             {
2026-06-07T23:26:21.0098318Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-07T23:26:21.0098418Z               "line": 205
2026-06-07T23:26:21.0098499Z             },
2026-06-07T23:26:21.0098580Z             {
2026-06-07T23:26:21.0098694Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-07T23:26:21.0098790Z               "line": 221
2026-06-07T23:26:21.0098871Z             },
2026-06-07T23:26:21.0098957Z             {
2026-06-07T23:26:21.0099066Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:21.0099153Z               "line": 17
2026-06-07T23:26:21.0099238Z             },
2026-06-07T23:26:21.0099323Z             {
2026-06-07T23:26:21.0099434Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:21.0099525Z               "line": 43
2026-06-07T23:26:21.0099609Z             },
2026-06-07T23:26:21.0099694Z             {
2026-06-07T23:26:21.0099800Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:21.0099890Z               "line": 101
2026-06-07T23:26:21.0099971Z             }
2026-06-07T23:26:21.0100061Z           ]
2026-06-07T23:26:21.0100148Z         },
2026-06-07T23:26:21.0100234Z         "int": {
2026-06-07T23:26:21.0100323Z           "complete": true,
2026-06-07T23:26:21.0100409Z           "evidence": [
2026-06-07T23:26:21.0100496Z             {
2026-06-07T23:26:21.0100615Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-07T23:26:21.0100705Z               "line": 436
2026-06-07T23:26:21.0100792Z             }
2026-06-07T23:26:21.0100872Z           ]
2026-06-07T23:26:21.0100958Z         },
2026-06-07T23:26:21.0101039Z         "unit": {
2026-06-07T23:26:21.0101131Z           "complete": true,
2026-06-07T23:26:21.0101220Z           "evidence": [
2026-06-07T23:26:21.0101306Z             {
2026-06-07T23:26:21.0101422Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-07T23:26:21.0101512Z               "line": 331
2026-06-07T23:26:21.0101593Z             },
2026-06-07T23:26:21.0101678Z             {
2026-06-07T23:26:21.0101789Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-07T23:26:21.0101979Z               "line": 352
2026-06-07T23:26:21.0102066Z             },
2026-06-07T23:26:21.0102141Z             {
2026-06-07T23:26:21.0102254Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-07T23:26:21.0102431Z               "line": 362
2026-06-07T23:26:21.0102500Z             },
2026-06-07T23:26:21.0102580Z             {
2026-06-07T23:26:21.0102686Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:21.0102796Z               "line": 422
2026-06-07T23:26:21.0102885Z             },
2026-06-07T23:26:21.0102972Z             {
2026-06-07T23:26:21.0103086Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:21.0103195Z               "line": 455
2026-06-07T23:26:21.0103291Z             },
2026-06-07T23:26:21.0103387Z             {
2026-06-07T23:26:21.0103496Z               "path": "crates/spt/src/api/startup.rs",
2026-06-07T23:26:21.0103587Z               "line": 463
2026-06-07T23:26:21.0103669Z             }
2026-06-07T23:26:21.0103758Z           ]
2026-06-07T23:26:21.0103839Z         }
2026-06-07T23:26:21.0103925Z       }
2026-06-07T23:26:21.0104008Z     },
2026-06-07T23:26:21.0104092Z     {
2026-06-07T23:26:21.0104187Z       "id": "REQ-START-4",
2026-06-07T23:26:21.0104327Z       "title": "Adapter-injected env aliases (SPT/OWL/LIVE)",
2026-06-07T23:26:21.0104421Z       "requiredStages": [
2026-06-07T23:26:21.0104507Z         "impl",
2026-06-07T23:26:21.0104594Z         "unit"
2026-06-07T23:26:21.0104675Z       ],
2026-06-07T23:26:21.0104764Z       "stages": {
2026-06-07T23:26:21.0104844Z         "doc": {
2026-06-07T23:26:21.0104935Z           "complete": false,
2026-06-07T23:26:21.0105029Z           "evidence": []
2026-06-07T23:26:21.0105114Z         },
2026-06-07T23:26:21.0105199Z         "impl": {
2026-06-07T23:26:21.0105291Z           "complete": true,
2026-06-07T23:26:21.0105381Z           "evidence": [
2026-06-07T23:26:21.0105462Z             {
2026-06-07T23:26:21.0105582Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:21.0105677Z               "line": 391
2026-06-07T23:26:21.0105762Z             }
2026-06-07T23:26:21.0105848Z           ]
2026-06-07T23:26:21.0105930Z         },
2026-06-07T23:26:21.0106011Z         "int": {
2026-06-07T23:26:21.0106110Z           "complete": false,
2026-06-07T23:26:21.0106197Z           "evidence": []
2026-06-07T23:26:21.0106282Z         },
2026-06-07T23:26:21.0106368Z         "unit": {
2026-06-07T23:26:21.0106458Z           "complete": true,
2026-06-07T23:26:21.0106546Z           "evidence": [
2026-06-07T23:26:21.0106635Z             {
2026-06-07T23:26:21.0106750Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-07T23:26:21.0106836Z               "line": 660
2026-06-07T23:26:21.0106926Z             }
2026-06-07T23:26:21.0107097Z           ]
2026-06-07T23:26:21.0107190Z         }
2026-06-07T23:26:21.0107274Z       }
2026-06-07T23:26:21.0107364Z     },
2026-06-07T23:26:21.0107449Z     {
2026-06-07T23:26:21.0107540Z       "id": "REQ-STORE-1",
2026-06-07T23:26:21.0108353Z       "title": "spt-store::BranchStore (git branch as versioned KV; commit=checkpoint/tip=resume, atomic multi-key, merge-native sync) is the substrate for coarse/durable/audited state (context, registry snapshot+distribution, daemon checkpoint); hot paths (B5 fsync journal) + indexed queries (SQLite spool) excluded (ADR-0011)",
2026-06-07T23:26:21.0108459Z       "requiredStages": [
2026-06-07T23:26:21.0108549Z         "impl",
2026-06-07T23:26:21.0108639Z         "unit"
2026-06-07T23:26:21.0108720Z       ],
2026-06-07T23:26:21.0108807Z       "stages": {
2026-06-07T23:26:21.0108892Z         "doc": {
2026-06-07T23:26:21.0108987Z           "complete": false,
2026-06-07T23:26:21.0109079Z           "evidence": []
2026-06-07T23:26:21.0109164Z         },
2026-06-07T23:26:21.0109249Z         "impl": {
2026-06-07T23:26:21.0109340Z           "complete": true,
2026-06-07T23:26:21.0109446Z           "evidence": [
2026-06-07T23:26:21.0109531Z             {
2026-06-07T23:26:21.0109655Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:21.0109850Z               "line": 23
2026-06-07T23:26:21.0109936Z             },
2026-06-07T23:26:21.0110018Z             {
2026-06-07T23:26:21.0110142Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:21.0110321Z               "line": 46
2026-06-07T23:26:21.0110403Z             },
2026-06-07T23:26:21.0110484Z             {
2026-06-07T23:26:21.0110607Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:21.0110699Z               "line": 97
2026-06-07T23:26:21.0110784Z             },
2026-06-07T23:26:21.0110865Z             {
2026-06-07T23:26:21.0110984Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:21.0111080Z               "line": 125
2026-06-07T23:26:21.0111166Z             },
2026-06-07T23:26:21.0111255Z             {
2026-06-07T23:26:21.0111371Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:21.0111466Z               "line": 181
2026-06-07T23:26:21.0111551Z             },
2026-06-07T23:26:21.0111633Z             {
2026-06-07T23:26:21.0111752Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:21.0111843Z               "line": 205
2026-06-07T23:26:21.0111938Z             },
2026-06-07T23:26:21.0112020Z             {
2026-06-07T23:26:21.0112138Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:21.0112224Z               "line": 441
2026-06-07T23:26:21.0112311Z             },
2026-06-07T23:26:21.0112391Z             {
2026-06-07T23:26:21.0112519Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:21.0112607Z               "line": 25
2026-06-07T23:26:21.0112692Z             },
2026-06-07T23:26:21.0112776Z             {
2026-06-07T23:26:21.0112895Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:21.0112986Z               "line": 104
2026-06-07T23:26:21.0113070Z             },
2026-06-07T23:26:21.0113155Z             {
2026-06-07T23:26:21.0113280Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:21.0113371Z               "line": 132
2026-06-07T23:26:21.0113455Z             },
2026-06-07T23:26:21.0113537Z             {
2026-06-07T23:26:21.0113661Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:21.0113751Z               "line": 148
2026-06-07T23:26:21.0113837Z             },
2026-06-07T23:26:21.0113919Z             {
2026-06-07T23:26:21.0114033Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:21.0114128Z               "line": 166
2026-06-07T23:26:21.0114210Z             },
2026-06-07T23:26:21.0114295Z             {
2026-06-07T23:26:21.0114413Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:21.0114500Z               "line": 175
2026-06-07T23:26:21.0114587Z             },
2026-06-07T23:26:21.0114666Z             {
2026-06-07T23:26:21.0114786Z               "path": "crates/spt-store/src/project.rs",
2026-06-07T23:26:21.0114878Z               "line": 16
2026-06-07T23:26:21.0114962Z             },
2026-06-07T23:26:21.0115048Z             {
2026-06-07T23:26:21.0115159Z               "path": "crates/spt-store/src/project.rs",
2026-06-07T23:26:21.0115254Z               "line": 63
2026-06-07T23:26:21.0115338Z             }
2026-06-07T23:26:21.0115423Z           ]
2026-06-07T23:26:21.0115505Z         },
2026-06-07T23:26:21.0115594Z         "int": {
2026-06-07T23:26:21.0115688Z           "complete": false,
2026-06-07T23:26:21.0115774Z           "evidence": []
2026-06-07T23:26:21.0115861Z         },
2026-06-07T23:26:21.0115951Z         "unit": {
2026-06-07T23:26:21.0116046Z           "complete": true,
2026-06-07T23:26:21.0116132Z           "evidence": [
2026-06-07T23:26:21.0116218Z             {
2026-06-07T23:26:21.0116341Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:21.0116428Z               "line": 558
2026-06-07T23:26:21.0116518Z             },
2026-06-07T23:26:21.0116604Z             {
2026-06-07T23:26:21.0116801Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:21.0116890Z               "line": 568
2026-06-07T23:26:21.0117058Z             },
2026-06-07T23:26:21.0117148Z             {
2026-06-07T23:26:21.0117357Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:21.0117449Z               "line": 590
2026-06-07T23:26:21.0117533Z             },
2026-06-07T23:26:21.0117619Z             {
2026-06-07T23:26:21.0117730Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:21.0117825Z               "line": 606
2026-06-07T23:26:21.0117910Z             },
2026-06-07T23:26:21.0117990Z             {
2026-06-07T23:26:21.0118114Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-07T23:26:21.0118203Z               "line": 629
2026-06-07T23:26:21.0118288Z             },
2026-06-07T23:26:21.0118370Z             {
2026-06-07T23:26:21.0118489Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:21.0118589Z               "line": 440
2026-06-07T23:26:21.0118670Z             },
2026-06-07T23:26:21.0118756Z             {
2026-06-07T23:26:21.0118870Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-07T23:26:21.0118966Z               "line": 475
2026-06-07T23:26:21.0119052Z             },
2026-06-07T23:26:21.0119138Z             {
2026-06-07T23:26:21.0119256Z               "path": "crates/spt-store/src/project.rs",
2026-06-07T23:26:21.0119344Z               "line": 120
2026-06-07T23:26:21.0119428Z             },
2026-06-07T23:26:21.0119514Z             {
2026-06-07T23:26:21.0119629Z               "path": "crates/spt-store/src/project.rs",
2026-06-07T23:26:21.0119720Z               "line": 128
2026-06-07T23:26:21.0119800Z             }
2026-06-07T23:26:21.0119886Z           ]
2026-06-07T23:26:21.0119968Z         }
2026-06-07T23:26:21.0120053Z       }
2026-06-07T23:26:21.0120143Z     },
2026-06-07T23:26:21.0120224Z     {
2026-06-07T23:26:21.0120321Z       "id": "REQ-SUBNET-1",
2026-06-07T23:26:21.0120631Z       "title": "spt subnet noun namespace: status view (bare + status [NAME] [--nodes]), create (QR/otpauth), show-code; spt pair deleted",
2026-06-07T23:26:21.0120734Z       "requiredStages": [
2026-06-07T23:26:21.0120819Z         "impl",
2026-06-07T23:26:21.0120905Z         "unit"
2026-06-07T23:26:21.0120987Z       ],
2026-06-07T23:26:21.0121077Z       "stages": {
2026-06-07T23:26:21.0121162Z         "doc": {
2026-06-07T23:26:21.0121254Z           "complete": false,
2026-06-07T23:26:21.0121349Z           "evidence": []
2026-06-07T23:26:21.0121439Z         },
2026-06-07T23:26:21.0121525Z         "impl": {
2026-06-07T23:26:21.0121616Z           "complete": true,
2026-06-07T23:26:21.0121716Z           "evidence": [
2026-06-07T23:26:21.0121801Z             {
2026-06-07T23:26:21.0121926Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:21.0122016Z               "line": 258
2026-06-07T23:26:21.0122097Z             },
2026-06-07T23:26:21.0122188Z             {
2026-06-07T23:26:21.0122312Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:21.0122408Z               "line": 496
2026-06-07T23:26:21.0122493Z             },
2026-06-07T23:26:21.0122575Z             {
2026-06-07T23:26:21.0122688Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0122774Z               "line": 2043
2026-06-07T23:26:21.0122861Z             },
2026-06-07T23:26:21.0122942Z             {
2026-06-07T23:26:21.0123046Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0123138Z               "line": 2208
2026-06-07T23:26:21.0123219Z             },
2026-06-07T23:26:21.0123308Z             {
2026-06-07T23:26:21.0123407Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0123498Z               "line": 2227
2026-06-07T23:26:21.0123588Z             },
2026-06-07T23:26:21.0123672Z             {
2026-06-07T23:26:21.0123772Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0123859Z               "line": 2288
2026-06-07T23:26:21.0124068Z             },
2026-06-07T23:26:21.0124150Z             {
2026-06-07T23:26:21.0124260Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0124349Z               "line": 2330
2026-06-07T23:26:21.0124503Z             },
2026-06-07T23:26:21.0124588Z             {
2026-06-07T23:26:21.0124683Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0124774Z               "line": 2499
2026-06-07T23:26:21.0124860Z             },
2026-06-07T23:26:21.0124946Z             {
2026-06-07T23:26:21.0125045Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0125137Z               "line": 2556
2026-06-07T23:26:21.0125226Z             },
2026-06-07T23:26:21.0125312Z             {
2026-06-07T23:26:21.0125418Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0125508Z               "line": 2680
2026-06-07T23:26:21.0125599Z             },
2026-06-07T23:26:21.0125680Z             {
2026-06-07T23:26:21.0125795Z               "path": "crates/spt/src/wansend.rs",
2026-06-07T23:26:21.0125893Z               "line": 412
2026-06-07T23:26:21.0125979Z             }
2026-06-07T23:26:21.0126070Z           ]
2026-06-07T23:26:21.0126150Z         },
2026-06-07T23:26:21.0126239Z         "int": {
2026-06-07T23:26:21.0126334Z           "complete": false,
2026-06-07T23:26:21.0126430Z           "evidence": []
2026-06-07T23:26:21.0126511Z         },
2026-06-07T23:26:21.0126596Z         "unit": {
2026-06-07T23:26:21.0126692Z           "complete": true,
2026-06-07T23:26:21.0126778Z           "evidence": [
2026-06-07T23:26:21.0126868Z             {
2026-06-07T23:26:21.0127083Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:21.0127178Z               "line": 1202
2026-06-07T23:26:21.0127264Z             },
2026-06-07T23:26:21.0127346Z             {
2026-06-07T23:26:21.0127455Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0127545Z               "line": 6153
2026-06-07T23:26:21.0127637Z             },
2026-06-07T23:26:21.0127727Z             {
2026-06-07T23:26:21.0127827Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0127917Z               "line": 6298
2026-06-07T23:26:21.0128000Z             },
2026-06-07T23:26:21.0128088Z             {
2026-06-07T23:26:21.0128194Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0128281Z               "line": 6305
2026-06-07T23:26:21.0128371Z             },
2026-06-07T23:26:21.0128451Z             {
2026-06-07T23:26:21.0128555Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0128646Z               "line": 6358
2026-06-07T23:26:21.0128730Z             },
2026-06-07T23:26:21.0128815Z             {
2026-06-07T23:26:21.0128915Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0129007Z               "line": 6375
2026-06-07T23:26:21.0129087Z             },
2026-06-07T23:26:21.0129172Z             {
2026-06-07T23:26:21.0129274Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0129364Z               "line": 6389
2026-06-07T23:26:21.0129449Z             },
2026-06-07T23:26:21.0129536Z             {
2026-06-07T23:26:21.0129636Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0129726Z               "line": 6487
2026-06-07T23:26:21.0129816Z             }
2026-06-07T23:26:21.0129899Z           ]
2026-06-07T23:26:21.0129983Z         }
2026-06-07T23:26:21.0130069Z       }
2026-06-07T23:26:21.0130155Z     },
2026-06-07T23:26:21.0130238Z     {
2026-06-07T23:26:21.0130332Z       "id": "REQ-SUBNET-2",
2026-06-07T23:26:21.0130557Z       "title": "Guided join e2e: spt subnet join CLI initiator + always-on daemon pairing responder",
2026-06-07T23:26:21.0130655Z       "requiredStages": [
2026-06-07T23:26:21.0130737Z         "impl",
2026-06-07T23:26:21.0130819Z         "unit",
2026-06-07T23:26:21.0130905Z         "int"
2026-06-07T23:26:21.0130989Z       ],
2026-06-07T23:26:21.0131071Z       "stages": {
2026-06-07T23:26:21.0131158Z         "doc": {
2026-06-07T23:26:21.0131247Z           "complete": true,
2026-06-07T23:26:21.0131441Z           "evidence": [
2026-06-07T23:26:21.0131523Z             {
2026-06-07T23:26:21.0131685Z               "path": "docs/adr/0005-totp-seeded-spake2-node-pairing.md",
2026-06-07T23:26:21.0131775Z               "line": 60
2026-06-07T23:26:21.0131938Z             }
2026-06-07T23:26:21.0132023Z           ]
2026-06-07T23:26:21.0132109Z         },
2026-06-07T23:26:21.0132195Z         "impl": {
2026-06-07T23:26:21.0132281Z           "complete": true,
2026-06-07T23:26:21.0132380Z           "evidence": [
2026-06-07T23:26:21.0132468Z             {
2026-06-07T23:26:21.0132581Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-07T23:26:21.0132672Z               "line": 548
2026-06-07T23:26:21.0132753Z             },
2026-06-07T23:26:21.0132835Z             {
2026-06-07T23:26:21.0132948Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-07T23:26:21.0133044Z               "line": 636
2026-06-07T23:26:21.0133130Z             },
2026-06-07T23:26:21.0133215Z             {
2026-06-07T23:26:21.0133334Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-07T23:26:21.0133422Z               "line": 416
2026-06-07T23:26:21.0133507Z             },
2026-06-07T23:26:21.0133586Z             {
2026-06-07T23:26:21.0133703Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-07T23:26:21.0133793Z               "line": 499
2026-06-07T23:26:21.0133878Z             },
2026-06-07T23:26:21.0133958Z             {
2026-06-07T23:26:21.0134073Z               "path": "crates/spt-daemon/src/pairhost.rs",
2026-06-07T23:26:21.0134162Z               "line": 26
2026-06-07T23:26:21.0134246Z             },
2026-06-07T23:26:21.0134332Z             {
2026-06-07T23:26:21.0134448Z               "path": "crates/spt-daemon/src/pairhost.rs",
2026-06-07T23:26:21.0134533Z               "line": 60
2026-06-07T23:26:21.0134618Z             },
2026-06-07T23:26:21.0134700Z             {
2026-06-07T23:26:21.0134815Z               "path": "crates/spt-daemon/src/pairhost.rs",
2026-06-07T23:26:21.0134909Z               "line": 150
2026-06-07T23:26:21.0134996Z             },
2026-06-07T23:26:21.0135082Z             {
2026-06-07T23:26:21.0135191Z               "path": "crates/spt-daemon/src/pairhost.rs",
2026-06-07T23:26:21.0135281Z               "line": 277
2026-06-07T23:26:21.0135368Z             },
2026-06-07T23:26:21.0135453Z             {
2026-06-07T23:26:21.0135567Z               "path": "crates/spt-daemon/src/pairhost.rs",
2026-06-07T23:26:21.0135654Z               "line": 389
2026-06-07T23:26:21.0135735Z             },
2026-06-07T23:26:21.0135821Z             {
2026-06-07T23:26:21.0135940Z               "path": "crates/spt-net/src/net/pairing/meet.rs",
2026-06-07T23:26:21.0136031Z               "line": 252
2026-06-07T23:26:21.0136111Z             },
2026-06-07T23:26:21.0136206Z             {
2026-06-07T23:26:21.0136303Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0136393Z               "line": 2254
2026-06-07T23:26:21.0136477Z             },
2026-06-07T23:26:21.0136562Z             {
2026-06-07T23:26:21.0136663Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0136752Z               "line": 2619
2026-06-07T23:26:21.0136837Z             },
2026-06-07T23:26:21.0136919Z             {
2026-06-07T23:26:21.0137104Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0137194Z               "line": 3037
2026-06-07T23:26:21.0137277Z             }
2026-06-07T23:26:21.0137357Z           ]
2026-06-07T23:26:21.0137447Z         },
2026-06-07T23:26:21.0137533Z         "int": {
2026-06-07T23:26:21.0137625Z           "complete": true,
2026-06-07T23:26:21.0137715Z           "evidence": [
2026-06-07T23:26:21.0137795Z             {
2026-06-07T23:26:21.0137921Z               "path": "crates/spt-daemon/tests/pairjoin.rs",
2026-06-07T23:26:21.0138005Z               "line": 22
2026-06-07T23:26:21.0138091Z             },
2026-06-07T23:26:21.0138178Z             {
2026-06-07T23:26:21.0138297Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:21.0138482Z               "line": 573
2026-06-07T23:26:21.0138565Z             },
2026-06-07T23:26:21.0138653Z             {
2026-06-07T23:26:21.0138769Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:21.0138941Z               "line": 790
2026-06-07T23:26:21.0139030Z             }
2026-06-07T23:26:21.0139110Z           ]
2026-06-07T23:26:21.0139192Z         },
2026-06-07T23:26:21.0141069Z         "unit": {
2026-06-07T23:26:21.0141192Z           "complete": true,
2026-06-07T23:26:21.0141282Z           "evidence": [
2026-06-07T23:26:21.0141369Z             {
2026-06-07T23:26:21.0141502Z               "path": "crates/spt-daemon/src/pairhost.rs",
2026-06-07T23:26:21.0141592Z               "line": 475
2026-06-07T23:26:21.0141679Z             },
2026-06-07T23:26:21.0141766Z             {
2026-06-07T23:26:21.0141868Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0141963Z               "line": 6193
2026-06-07T23:26:21.0142049Z             },
2026-06-07T23:26:21.0142145Z             {
2026-06-07T23:26:21.0142245Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0142340Z               "line": 6591
2026-06-07T23:26:21.0142422Z             }
2026-06-07T23:26:21.0142517Z           ]
2026-06-07T23:26:21.0142607Z         }
2026-06-07T23:26:21.0142689Z       }
2026-06-07T23:26:21.0142779Z     },
2026-06-07T23:26:21.0142864Z     {
2026-06-07T23:26:21.0142955Z       "id": "REQ-SUBNET-3",
2026-06-07T23:26:21.0143217Z       "title": "Node labels: hostname-default, gossiped, addressable in @node qualifiers (refuse-on-ambiguity)",
2026-06-07T23:26:21.0143318Z       "requiredStages": [
2026-06-07T23:26:21.0143404Z         "impl",
2026-06-07T23:26:21.0143489Z         "unit"
2026-06-07T23:26:21.0143575Z       ],
2026-06-07T23:26:21.0143663Z       "stages": {
2026-06-07T23:26:21.0143747Z         "doc": {
2026-06-07T23:26:21.0143842Z           "complete": false,
2026-06-07T23:26:21.0143934Z           "evidence": []
2026-06-07T23:26:21.0144015Z         },
2026-06-07T23:26:21.0144109Z         "impl": {
2026-06-07T23:26:21.0144200Z           "complete": true,
2026-06-07T23:26:21.0144292Z           "evidence": [
2026-06-07T23:26:21.0144377Z             {
2026-06-07T23:26:21.0144503Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:21.0144599Z               "line": 146
2026-06-07T23:26:21.0144685Z             },
2026-06-07T23:26:21.0144769Z             {
2026-06-07T23:26:21.0144892Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:21.0144984Z               "line": 360
2026-06-07T23:26:21.0145070Z             },
2026-06-07T23:26:21.0145154Z             {
2026-06-07T23:26:21.0145270Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:21.0145360Z               "line": 125
2026-06-07T23:26:21.0145441Z             },
2026-06-07T23:26:21.0145527Z             {
2026-06-07T23:26:21.0145642Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:21.0145732Z               "line": 500
2026-06-07T23:26:21.0145817Z             },
2026-06-07T23:26:21.0145904Z             {
2026-06-07T23:26:21.0146013Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:21.0146104Z               "line": 559
2026-06-07T23:26:21.0146190Z             },
2026-06-07T23:26:21.0146276Z             {
2026-06-07T23:26:21.0146390Z               "path": "crates/spt-store/src/hostlabel.rs",
2026-06-07T23:26:21.0146481Z               "line": 9
2026-06-07T23:26:21.0146567Z             },
2026-06-07T23:26:21.0146647Z             {
2026-06-07T23:26:21.0146752Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0146840Z               "line": 2556
2026-06-07T23:26:21.0146925Z             },
2026-06-07T23:26:21.0147104Z             {
2026-06-07T23:26:21.0147214Z               "path": "crates/spt/src/wansend.rs",
2026-06-07T23:26:21.0147302Z               "line": 433
2026-06-07T23:26:21.0147387Z             }
2026-06-07T23:26:21.0147469Z           ]
2026-06-07T23:26:21.0147674Z         },
2026-06-07T23:26:21.0147759Z         "int": {
2026-06-07T23:26:21.0147851Z           "complete": false,
2026-06-07T23:26:21.0147942Z           "evidence": []
2026-06-07T23:26:21.0148026Z         },
2026-06-07T23:26:21.0148199Z         "unit": {
2026-06-07T23:26:21.0148294Z           "complete": true,
2026-06-07T23:26:21.0148380Z           "evidence": [
2026-06-07T23:26:21.0148461Z             {
2026-06-07T23:26:21.0148585Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:21.0148675Z               "line": 1331
2026-06-07T23:26:21.0148762Z             },
2026-06-07T23:26:21.0148848Z             {
2026-06-07T23:26:21.0148957Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:21.0149052Z               "line": 868
2026-06-07T23:26:21.0149139Z             },
2026-06-07T23:26:21.0149223Z             {
2026-06-07T23:26:21.0149338Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:21.0149425Z               "line": 917
2026-06-07T23:26:21.0149515Z             },
2026-06-07T23:26:21.0149599Z             {
2026-06-07T23:26:21.0149719Z               "path": "crates/spt-store/src/hostlabel.rs",
2026-06-07T23:26:21.0149804Z               "line": 49
2026-06-07T23:26:21.0149892Z             },
2026-06-07T23:26:21.0149978Z             {
2026-06-07T23:26:21.0150084Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0150175Z               "line": 6487
2026-06-07T23:26:21.0150255Z             }
2026-06-07T23:26:21.0150341Z           ]
2026-06-07T23:26:21.0150423Z         }
2026-06-07T23:26:21.0150508Z       }
2026-06-07T23:26:21.0150588Z     },
2026-06-07T23:26:21.0150670Z     {
2026-06-07T23:26:21.0150780Z       "id": "REQ-SUBNET-4",
2026-06-07T23:26:21.0151062Z       "title": "Subnet membership mutations elevation-gated (create = seed reveal; join = trust-boundary enrollment)",
2026-06-07T23:26:21.0151157Z       "requiredStages": [
2026-06-07T23:26:21.0151247Z         "impl",
2026-06-07T23:26:21.0151329Z         "unit"
2026-06-07T23:26:21.0151418Z       ],
2026-06-07T23:26:21.0151504Z       "stages": {
2026-06-07T23:26:21.0151590Z         "doc": {
2026-06-07T23:26:21.0151682Z           "complete": true,
2026-06-07T23:26:21.0151775Z           "evidence": [
2026-06-07T23:26:21.0151857Z             {
2026-06-07T23:26:21.0152016Z               "path": "docs/adr/0005-totp-seeded-spake2-node-pairing.md",
2026-06-07T23:26:21.0152104Z               "line": 60
2026-06-07T23:26:21.0152186Z             }
2026-06-07T23:26:21.0152273Z           ]
2026-06-07T23:26:21.0152354Z         },
2026-06-07T23:26:21.0152443Z         "impl": {
2026-06-07T23:26:21.0152532Z           "complete": true,
2026-06-07T23:26:21.0152624Z           "evidence": [
2026-06-07T23:26:21.0152705Z             {
2026-06-07T23:26:21.0152810Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0152901Z               "line": 2043
2026-06-07T23:26:21.0152987Z             },
2026-06-07T23:26:21.0153072Z             {
2026-06-07T23:26:21.0153172Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0153259Z               "line": 3004
2026-06-07T23:26:21.0153335Z             },
2026-06-07T23:26:21.0153415Z             {
2026-06-07T23:26:21.0153515Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0153607Z               "line": 3037
2026-06-07T23:26:21.0153707Z             }
2026-06-07T23:26:21.0153792Z           ]
2026-06-07T23:26:21.0153878Z         },
2026-06-07T23:26:21.0153959Z         "int": {
2026-06-07T23:26:21.0154049Z           "complete": false,
2026-06-07T23:26:21.0154135Z           "evidence": []
2026-06-07T23:26:21.0154213Z         },
2026-06-07T23:26:21.0154298Z         "unit": {
2026-06-07T23:26:21.0154388Z           "complete": true,
2026-06-07T23:26:21.0154479Z           "evidence": [
2026-06-07T23:26:21.0154561Z             {
2026-06-07T23:26:21.0154664Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0154751Z               "line": 6284
2026-06-07T23:26:21.0154833Z             },
2026-06-07T23:26:21.0155012Z             {
2026-06-07T23:26:21.0155116Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0155203Z               "line": 6358
2026-06-07T23:26:21.0155287Z             }
2026-06-07T23:26:21.0155372Z           ]
2026-06-07T23:26:21.0155520Z         }
2026-06-07T23:26:21.0155601Z       }
2026-06-07T23:26:21.0155686Z     },
2026-06-07T23:26:21.0155768Z     {
2026-06-07T23:26:21.0155863Z       "id": "REQ-SUBNET-5",
2026-06-07T23:26:21.0157104Z       "title": "Per-subnet serve-state: spt subnet detach <NAME> [--save] / attach <NAME> [--save] — daemon keeps running, stops/starts advertising + connecting for that subnet (peer pump + responder selective); --save persists the startup default in daemon config; the all-attached banner gains per-subnet states (M8 decision 6, --save renamed from --auto per decision 25 session)",
2026-06-07T23:26:21.0157212Z       "requiredStages": [
2026-06-07T23:26:21.0157298Z         "impl",
2026-06-07T23:26:21.0157385Z         "unit"
2026-06-07T23:26:21.0157480Z       ],
2026-06-07T23:26:21.0157565Z       "stages": {
2026-06-07T23:26:21.0157654Z         "doc": {
2026-06-07T23:26:21.0157750Z           "complete": false,
2026-06-07T23:26:21.0157840Z           "evidence": []
2026-06-07T23:26:21.0157933Z         },
2026-06-07T23:26:21.0158019Z         "impl": {
2026-06-07T23:26:21.0158116Z           "complete": true,
2026-06-07T23:26:21.0158210Z           "evidence": [
2026-06-07T23:26:21.0158295Z             {
2026-06-07T23:26:21.0158425Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-07T23:26:21.0158520Z               "line": 126
2026-06-07T23:26:21.0158605Z             },
2026-06-07T23:26:21.0158688Z             {
2026-06-07T23:26:21.0158811Z               "path": "crates/spt-daemon/src/pairhost.rs",
2026-06-07T23:26:21.0158901Z               "line": 74
2026-06-07T23:26:21.0158988Z             },
2026-06-07T23:26:21.0159074Z             {
2026-06-07T23:26:21.0159193Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:21.0159288Z               "line": 316
2026-06-07T23:26:21.0159374Z             },
2026-06-07T23:26:21.0159464Z             {
2026-06-07T23:26:21.0159584Z               "path": "crates/spt-store/src/attachment.rs",
2026-06-07T23:26:21.0159675Z               "line": 17
2026-06-07T23:26:21.0159760Z             },
2026-06-07T23:26:21.0159846Z             {
2026-06-07T23:26:21.0159952Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0160042Z               "line": 2962
2026-06-07T23:26:21.0160126Z             }
2026-06-07T23:26:21.0160207Z           ]
2026-06-07T23:26:21.0160293Z         },
2026-06-07T23:26:21.0160383Z         "int": {
2026-06-07T23:26:21.0160472Z           "complete": false,
2026-06-07T23:26:21.0160562Z           "evidence": []
2026-06-07T23:26:21.0160649Z         },
2026-06-07T23:26:21.0160735Z         "unit": {
2026-06-07T23:26:21.0160829Z           "complete": true,
2026-06-07T23:26:21.0160944Z           "evidence": [
2026-06-07T23:26:21.0161035Z             {
2026-06-07T23:26:21.0161158Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-07T23:26:21.0161245Z               "line": 341
2026-06-07T23:26:21.0161330Z             },
2026-06-07T23:26:21.0161416Z             {
2026-06-07T23:26:21.0161540Z               "path": "crates/spt-store/src/attachment.rs",
2026-06-07T23:26:21.0161636Z               "line": 111
2026-06-07T23:26:21.0161726Z             },
2026-06-07T23:26:21.0161807Z             {
2026-06-07T23:26:21.0161923Z               "path": "crates/spt-store/src/attachment.rs",
2026-06-07T23:26:21.0162012Z               "line": 138
2026-06-07T23:26:21.0162097Z             },
2026-06-07T23:26:21.0162180Z             {
2026-06-07T23:26:21.0162303Z               "path": "crates/spt-store/src/attachment.rs",
2026-06-07T23:26:21.0162389Z               "line": 148
2026-06-07T23:26:21.0162474Z             },
2026-06-07T23:26:21.0162561Z             {
2026-06-07T23:26:21.0162660Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0162857Z               "line": 6210
2026-06-07T23:26:21.0162947Z             }
2026-06-07T23:26:21.0163027Z           ]
2026-06-07T23:26:21.0163116Z         }
2026-06-07T23:26:21.0163199Z       }
2026-06-07T23:26:21.0163280Z     },
2026-06-07T23:26:21.0163456Z     {
2026-06-07T23:26:21.0163556Z       "id": "REQ-SUBNET-6",
2026-06-07T23:26:21.0164204Z       "title": "Trust lifecycle verbs, elevation-gated: spt subnet leave <NAME> (membership exit) and spt subnet prune <node> (removes a dead identity's trust + registry rows, killing its dead dials; trust mutation = security surface, REQ-PAIR-6 gate machinery) (M8 decisions 6-7)",
2026-06-07T23:26:21.0164309Z       "requiredStages": [
2026-06-07T23:26:21.0164395Z         "impl",
2026-06-07T23:26:21.0164482Z         "unit"
2026-06-07T23:26:21.0164567Z       ],
2026-06-07T23:26:21.0164652Z       "stages": {
2026-06-07T23:26:21.0164739Z         "doc": {
2026-06-07T23:26:21.0164834Z           "complete": false,
2026-06-07T23:26:21.0164924Z           "evidence": []
2026-06-07T23:26:21.0165015Z         },
2026-06-07T23:26:21.0165102Z         "impl": {
2026-06-07T23:26:21.0165196Z           "complete": true,
2026-06-07T23:26:21.0165281Z           "evidence": [
2026-06-07T23:26:21.0165374Z             {
2026-06-07T23:26:21.0165483Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0165572Z               "line": 2791
2026-06-07T23:26:21.0165657Z             },
2026-06-07T23:26:21.0165744Z             {
2026-06-07T23:26:21.0165851Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0165941Z               "line": 2808
2026-06-07T23:26:21.0166027Z             },
2026-06-07T23:26:21.0166114Z             {
2026-06-07T23:26:21.0166213Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0166313Z               "line": 2857
2026-06-07T23:26:21.0166395Z             },
2026-06-07T23:26:21.0166485Z             {
2026-06-07T23:26:21.0166585Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0166676Z               "line": 2879
2026-06-07T23:26:21.0166767Z             }
2026-06-07T23:26:21.0166852Z           ]
2026-06-07T23:26:21.0166937Z         },
2026-06-07T23:26:21.0167110Z         "int": {
2026-06-07T23:26:21.0167205Z           "complete": false,
2026-06-07T23:26:21.0167301Z           "evidence": []
2026-06-07T23:26:21.0167387Z         },
2026-06-07T23:26:21.0167472Z         "unit": {
2026-06-07T23:26:21.0167562Z           "complete": true,
2026-06-07T23:26:21.0167659Z           "evidence": [
2026-06-07T23:26:21.0167744Z             {
2026-06-07T23:26:21.0167844Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0167935Z               "line": 6224
2026-06-07T23:26:21.0168021Z             },
2026-06-07T23:26:21.0168110Z             {
2026-06-07T23:26:21.0168210Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0168301Z               "line": 6243
2026-06-07T23:26:21.0168386Z             },
2026-06-07T23:26:21.0168470Z             {
2026-06-07T23:26:21.0168570Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0168662Z               "line": 6252
2026-06-07T23:26:21.0168747Z             }
2026-06-07T23:26:21.0168832Z           ]
2026-06-07T23:26:21.0168913Z         }
2026-06-07T23:26:21.0169000Z       }
2026-06-07T23:26:21.0169085Z     },
2026-06-07T23:26:21.0169170Z     {
2026-06-07T23:26:21.0169262Z       "id": "REQ-SUBNET-7",
2026-06-07T23:26:21.0170849Z       "title": "Per-machine re-pair trust overwrite: registry rows carry a hashed stable machine identifier (OS machine id /etc/machine-id|MachineGuid, domain-separated SHA-256 before gossip, spt-minted persisted UUID fallback; additive serde-default field — old rows parse clean); a COMPLETED pairing ceremony presenting the same node label AND machine id as an existing trusted row evicts the superseded identity's trust + registry rows on the seed-holder and replicates the eviction; a gossiped claim alone never evicts trust (M8 decisions 13, 22)",
2026-06-07T23:26:21.0170952Z       "requiredStages": [
2026-06-07T23:26:21.0171036Z         "impl",
2026-06-07T23:26:21.0171224Z         "unit"
2026-06-07T23:26:21.0171304Z       ],
2026-06-07T23:26:21.0171389Z       "stages": {
2026-06-07T23:26:21.0171476Z         "doc": {
2026-06-07T23:26:21.0171567Z           "complete": false,
2026-06-07T23:26:21.0171747Z           "evidence": []
2026-06-07T23:26:21.0171829Z         },
2026-06-07T23:26:21.0171914Z         "impl": {
2026-06-07T23:26:21.0172004Z           "complete": true,
2026-06-07T23:26:21.0172095Z           "evidence": [
2026-06-07T23:26:21.0172177Z             {
2026-06-07T23:26:21.0172296Z               "path": "crates/spt-daemon/src/machineid.rs",
2026-06-07T23:26:21.0172381Z               "line": 17
2026-06-07T23:26:21.0172468Z             },
2026-06-07T23:26:21.0172548Z             {
2026-06-07T23:26:21.0172667Z               "path": "crates/spt-daemon/src/pairhost.rs",
2026-06-07T23:26:21.0172755Z               "line": 104
2026-06-07T23:26:21.0172840Z             },
2026-06-07T23:26:21.0172924Z             {
2026-06-07T23:26:21.0173044Z               "path": "crates/spt-daemon/src/pairhost.rs",
2026-06-07T23:26:21.0173131Z               "line": 291
2026-06-07T23:26:21.0173215Z             },
2026-06-07T23:26:21.0173296Z             {
2026-06-07T23:26:21.0173412Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:21.0173507Z               "line": 339
2026-06-07T23:26:21.0173591Z             },
2026-06-07T23:26:21.0173676Z             {
2026-06-07T23:26:21.0173802Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:21.0173892Z               "line": 154
2026-06-07T23:26:21.0173977Z             },
2026-06-07T23:26:21.0174064Z             {
2026-06-07T23:26:21.0174179Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:21.0174273Z               "line": 364
2026-06-07T23:26:21.0174355Z             },
2026-06-07T23:26:21.0174441Z             {
2026-06-07T23:26:21.0174559Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:21.0174645Z               "line": 515
2026-06-07T23:26:21.0174737Z             },
2026-06-07T23:26:21.0174817Z             {
2026-06-07T23:26:21.0174936Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:21.0175028Z               "line": 555
2026-06-07T23:26:21.0175112Z             },
2026-06-07T23:26:21.0175193Z             {
2026-06-07T23:26:21.0175318Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:21.0175404Z               "line": 583
2026-06-07T23:26:21.0175489Z             },
2026-06-07T23:26:21.0175580Z             {
2026-06-07T23:26:21.0175705Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-07T23:26:21.0175789Z               "line": 128
2026-06-07T23:26:21.0175876Z             },
2026-06-07T23:26:21.0175957Z             {
2026-06-07T23:26:21.0176076Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:21.0176166Z               "line": 139
2026-06-07T23:26:21.0176246Z             }
2026-06-07T23:26:21.0176337Z           ]
2026-06-07T23:26:21.0176416Z         },
2026-06-07T23:26:21.0176501Z         "int": {
2026-06-07T23:26:21.0176597Z           "complete": false,
2026-06-07T23:26:21.0176688Z           "evidence": []
2026-06-07T23:26:21.0176768Z         },
2026-06-07T23:26:21.0176858Z         "unit": {
2026-06-07T23:26:21.0177041Z           "complete": true,
2026-06-07T23:26:21.0177130Z           "evidence": [
2026-06-07T23:26:21.0177217Z             {
2026-06-07T23:26:21.0177336Z               "path": "crates/spt-daemon/src/machineid.rs",
2026-06-07T23:26:21.0177426Z               "line": 136
2026-06-07T23:26:21.0177507Z             },
2026-06-07T23:26:21.0177595Z             {
2026-06-07T23:26:21.0177708Z               "path": "crates/spt-daemon/src/machineid.rs",
2026-06-07T23:26:21.0177799Z               "line": 156
2026-06-07T23:26:21.0177880Z             },
2026-06-07T23:26:21.0177970Z             {
2026-06-07T23:26:21.0178094Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:21.0178280Z               "line": 773
2026-06-07T23:26:21.0178366Z             },
2026-06-07T23:26:21.0178447Z             {
2026-06-07T23:26:21.0178567Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-07T23:26:21.0178760Z               "line": 795
2026-06-07T23:26:21.0178842Z             },
2026-06-07T23:26:21.0178932Z             {
2026-06-07T23:26:21.0179058Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-07T23:26:21.0179144Z               "line": 1287
2026-06-07T23:26:21.0179231Z             },
2026-06-07T23:26:21.0179311Z             {
2026-06-07T23:26:21.0179430Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-07T23:26:21.0179517Z               "line": 912
2026-06-07T23:26:21.0179603Z             }
2026-06-07T23:26:21.0179683Z           ]
2026-06-07T23:26:21.0179769Z         }
2026-06-07T23:26:21.0179851Z       }
2026-06-07T23:26:21.0179936Z     },
2026-06-07T23:26:21.0180017Z     {
2026-06-07T23:26:21.0180108Z       "id": "REQ-SUBNET-8",
2026-06-07T23:26:21.0181218Z       "title": "Status render honesty: zero-subnet text is daemon-aware ('No subnets registered — this node is standalone.' + daemon-running-dependent blurb, never implying messaging works while the daemon is down); hint footer prints on bare spt subnet only (status drops it); a stalled pump is surfaced in subnet status, never rendered implied-healthy (M8 decisions 11-12, 23)",
2026-06-07T23:26:21.0181322Z       "requiredStages": [
2026-06-07T23:26:21.0181409Z         "impl",
2026-06-07T23:26:21.0181498Z         "unit"
2026-06-07T23:26:21.0181578Z       ],
2026-06-07T23:26:21.0181663Z       "stages": {
2026-06-07T23:26:21.0181749Z         "doc": {
2026-06-07T23:26:21.0181841Z           "complete": false,
2026-06-07T23:26:21.0181930Z           "evidence": []
2026-06-07T23:26:21.0182011Z         },
2026-06-07T23:26:21.0182103Z         "impl": {
2026-06-07T23:26:21.0182189Z           "complete": true,
2026-06-07T23:26:21.0182278Z           "evidence": [
2026-06-07T23:26:21.0182370Z             {
2026-06-07T23:26:21.0182474Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0182565Z               "line": 2331
2026-06-07T23:26:21.0182646Z             },
2026-06-07T23:26:21.0182732Z             {
2026-06-07T23:26:21.0182832Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0182927Z               "line": 2360
2026-06-07T23:26:21.0183009Z             },
2026-06-07T23:26:21.0183095Z             {
2026-06-07T23:26:21.0183194Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0183280Z               "line": 2377
2026-06-07T23:26:21.0183367Z             },
2026-06-07T23:26:21.0183452Z             {
2026-06-07T23:26:21.0183551Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0183639Z               "line": 2681
2026-06-07T23:26:21.0183734Z             }
2026-06-07T23:26:21.0183818Z           ]
2026-06-07T23:26:21.0183895Z         },
2026-06-07T23:26:21.0183987Z         "int": {
2026-06-07T23:26:21.0184076Z           "complete": false,
2026-06-07T23:26:21.0184165Z           "evidence": []
2026-06-07T23:26:21.0184246Z         },
2026-06-07T23:26:21.0184329Z         "unit": {
2026-06-07T23:26:21.0184419Z           "complete": true,
2026-06-07T23:26:21.0184514Z           "evidence": [
2026-06-07T23:26:21.0184653Z             {
2026-06-07T23:26:21.0184748Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0184837Z               "line": 6389
2026-06-07T23:26:21.0184920Z             }
2026-06-07T23:26:21.0185005Z           ]
2026-06-07T23:26:21.0185091Z         }
2026-06-07T23:26:21.0185172Z       }
2026-06-07T23:26:21.0185259Z     },
2026-06-07T23:26:21.0185339Z     {
2026-06-07T23:26:21.0185434Z       "id": "REQ-TERM-1",
2026-06-07T23:26:21.0185602Z       "title": "Process-supervisor terminal wrapper hosting broker PTYs",
2026-06-07T23:26:21.0185696Z       "requiredStages": [
2026-06-07T23:26:21.0185782Z         "impl",
2026-06-07T23:26:21.0185869Z         "unit"
2026-06-07T23:26:21.0185950Z       ],
2026-06-07T23:26:21.0186111Z       "stages": {
2026-06-07T23:26:21.0186194Z         "doc": {
2026-06-07T23:26:21.0186284Z           "complete": false,
2026-06-07T23:26:21.0186377Z           "evidence": []
2026-06-07T23:26:21.0186460Z         },
2026-06-07T23:26:21.0186608Z         "impl": {
2026-06-07T23:26:21.0186697Z           "complete": true,
2026-06-07T23:26:21.0186787Z           "evidence": [
2026-06-07T23:26:21.0186873Z             {
2026-06-07T23:26:21.0187066Z               "path": "crates/spt-term/src/pty.rs",
2026-06-07T23:26:21.0187157Z               "line": 59
2026-06-07T23:26:21.0187253Z             },
2026-06-07T23:26:21.0187338Z             {
2026-06-07T23:26:21.0187448Z               "path": "crates/spt-term/src/pty.rs",
2026-06-07T23:26:21.0187534Z               "line": 171
2026-06-07T23:26:21.0187620Z             },
2026-06-07T23:26:21.0187705Z             {
2026-06-07T23:26:21.0187816Z               "path": "crates/spt-term/src/surface.rs",
2026-06-07T23:26:21.0187910Z               "line": 100
2026-06-07T23:26:21.0187996Z             }
2026-06-07T23:26:21.0188082Z           ]
2026-06-07T23:26:21.0188164Z         },
2026-06-07T23:26:21.0188254Z         "int": {
2026-06-07T23:26:21.0188344Z           "complete": false,
2026-06-07T23:26:21.0188445Z           "evidence": []
2026-06-07T23:26:21.0188530Z         },
2026-06-07T23:26:21.0188611Z         "unit": {
2026-06-07T23:26:21.0188711Z           "complete": true,
2026-06-07T23:26:21.0188794Z           "evidence": [
2026-06-07T23:26:21.0188882Z             {
2026-06-07T23:26:21.0189003Z               "path": "crates/spt-term/tests/surface.rs",
2026-06-07T23:26:21.0189089Z               "line": 24
2026-06-07T23:26:21.0189174Z             },
2026-06-07T23:26:21.0189259Z             {
2026-06-07T23:26:21.0189373Z               "path": "crates/spt-term/tests/surface.rs",
2026-06-07T23:26:21.0189464Z               "line": 56
2026-06-07T23:26:21.0189547Z             }
2026-06-07T23:26:21.0189633Z           ]
2026-06-07T23:26:21.0189719Z         }
2026-06-07T23:26:21.0189806Z       }
2026-06-07T23:26:21.0189885Z     },
2026-06-07T23:26:21.0189975Z     {
2026-06-07T23:26:21.0190068Z       "id": "REQ-TERM-2",
2026-06-07T23:26:21.0190243Z       "title": "session-surface abstraction; send-keys + send-line injection",
2026-06-07T23:26:21.0190339Z       "requiredStages": [
2026-06-07T23:26:21.0190425Z         "impl",
2026-06-07T23:26:21.0190515Z         "unit"
2026-06-07T23:26:21.0190596Z       ],
2026-06-07T23:26:21.0190683Z       "stages": {
2026-06-07T23:26:21.0190763Z         "doc": {
2026-06-07T23:26:21.0190863Z           "complete": false,
2026-06-07T23:26:21.0190954Z           "evidence": []
2026-06-07T23:26:21.0191036Z         },
2026-06-07T23:26:21.0191126Z         "impl": {
2026-06-07T23:26:21.0191216Z           "complete": true,
2026-06-07T23:26:21.0191307Z           "evidence": [
2026-06-07T23:26:21.0191389Z             {
2026-06-07T23:26:21.0191502Z               "path": "crates/spt-term/src/surface.rs",
2026-06-07T23:26:21.0191588Z               "line": 117
2026-06-07T23:26:21.0191680Z             },
2026-06-07T23:26:21.0191769Z             {
2026-06-07T23:26:21.0191877Z               "path": "crates/spt-term/src/surface.rs",
2026-06-07T23:26:21.0191969Z               "line": 127
2026-06-07T23:26:21.0192053Z             }
2026-06-07T23:26:21.0192138Z           ]
2026-06-07T23:26:21.0192218Z         },
2026-06-07T23:26:21.0192305Z         "int": {
2026-06-07T23:26:21.0192396Z           "complete": false,
2026-06-07T23:26:21.0192486Z           "evidence": []
2026-06-07T23:26:21.0192567Z         },
2026-06-07T23:26:21.0192649Z         "unit": {
2026-06-07T23:26:21.0192744Z           "complete": true,
2026-06-07T23:26:21.0192833Z           "evidence": [
2026-06-07T23:26:21.0192915Z             {
2026-06-07T23:26:21.0193030Z               "path": "crates/spt-term/tests/inject.rs",
2026-06-07T23:26:21.0193115Z               "line": 46
2026-06-07T23:26:21.0193201Z             },
2026-06-07T23:26:21.0193283Z             {
2026-06-07T23:26:21.0193397Z               "path": "crates/spt-term/tests/inject.rs",
2026-06-07T23:26:21.0193583Z               "line": 77
2026-06-07T23:26:21.0193673Z             }
2026-06-07T23:26:21.0193754Z           ]
2026-06-07T23:26:21.0193841Z         }
2026-06-07T23:26:21.0193922Z       }
2026-06-07T23:26:21.0194093Z     },
2026-06-07T23:26:21.0194174Z     {
2026-06-07T23:26:21.0194265Z       "id": "REQ-TERM-3",
2026-06-07T23:26:21.0194402Z       "title": "Byte-stream remote terminal streaming for v1",
2026-06-07T23:26:21.0194499Z       "requiredStages": [
2026-06-07T23:26:21.0194580Z         "impl",
2026-06-07T23:26:21.0194664Z         "unit"
2026-06-07T23:26:21.0194749Z       ],
2026-06-07T23:26:21.0194841Z       "stages": {
2026-06-07T23:26:21.0194922Z         "doc": {
2026-06-07T23:26:21.0195008Z           "complete": false,
2026-06-07T23:26:21.0195092Z           "evidence": []
2026-06-07T23:26:21.0195174Z         },
2026-06-07T23:26:21.0195260Z         "impl": {
2026-06-07T23:26:21.0195341Z           "complete": true,
2026-06-07T23:26:21.0195422Z           "evidence": [
2026-06-07T23:26:21.0195509Z             {
2026-06-07T23:26:21.0195623Z               "path": "crates/spt-term/src/stream.rs",
2026-06-07T23:26:21.0195712Z               "line": 71
2026-06-07T23:26:21.0195790Z             }
2026-06-07T23:26:21.0195876Z           ]
2026-06-07T23:26:21.0195966Z         },
2026-06-07T23:26:21.0196071Z         "int": {
2026-06-07T23:26:21.0196167Z           "complete": false,
2026-06-07T23:26:21.0196247Z           "evidence": []
2026-06-07T23:26:21.0196323Z         },
2026-06-07T23:26:21.0196414Z         "unit": {
2026-06-07T23:26:21.0196520Z           "complete": true,
2026-06-07T23:26:21.0196609Z           "evidence": [
2026-06-07T23:26:21.0196705Z             {
2026-06-07T23:26:21.0196820Z               "path": "crates/spt-term/tests/stream.rs",
2026-06-07T23:26:21.0196904Z               "line": 37
2026-06-07T23:26:21.0197064Z             },
2026-06-07T23:26:21.0197140Z             {
2026-06-07T23:26:21.0197257Z               "path": "crates/spt-term/tests/stream.rs",
2026-06-07T23:26:21.0197351Z               "line": 67
2026-06-07T23:26:21.0197433Z             }
2026-06-07T23:26:21.0197518Z           ]
2026-06-07T23:26:21.0197602Z         }
2026-06-07T23:26:21.0197683Z       }
2026-06-07T23:26:21.0197771Z     },
2026-06-07T23:26:21.0197856Z     {
2026-06-07T23:26:21.0197946Z       "id": "REQ-TERM-4",
2026-06-07T23:26:21.0198275Z       "title": "Live activity buffer (PTY digest): adapter-supplied patterns over broker PTY, spt digest pull + delta-stream, opt-in Path-B log",
2026-06-07T23:26:21.0198371Z       "requiredStages": [
2026-06-07T23:26:21.0198461Z         "impl",
2026-06-07T23:26:21.0198546Z         "unit",
2026-06-07T23:26:21.0198632Z         "int"
2026-06-07T23:26:21.0198719Z       ],
2026-06-07T23:26:21.0198804Z       "stages": {
2026-06-07T23:26:21.0198894Z         "doc": {
2026-06-07T23:26:21.0198986Z           "complete": true,
2026-06-07T23:26:21.0199077Z           "evidence": [
2026-06-07T23:26:21.0199162Z             {
2026-06-07T23:26:21.0199271Z               "path": "docs/MANIFEST.md",
2026-06-07T23:26:21.0199363Z               "line": 115
2026-06-07T23:26:21.0199447Z             }
2026-06-07T23:26:21.0199533Z           ]
2026-06-07T23:26:21.0199621Z         },
2026-06-07T23:26:21.0199711Z         "impl": {
2026-06-07T23:26:21.0199800Z           "complete": true,
2026-06-07T23:26:21.0199890Z           "evidence": [
2026-06-07T23:26:21.0199971Z             {
2026-06-07T23:26:21.0200089Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-07T23:26:21.0200188Z               "line": 507
2026-06-07T23:26:21.0200274Z             },
2026-06-07T23:26:21.0200361Z             {
2026-06-07T23:26:21.0200479Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-07T23:26:21.0200575Z               "line": 41
2026-06-07T23:26:21.0200661Z             },
2026-06-07T23:26:21.0200742Z             {
2026-06-07T23:26:21.0200860Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-07T23:26:21.0200948Z               "line": 91
2026-06-07T23:26:21.0201142Z             },
2026-06-07T23:26:21.0201228Z             {
2026-06-07T23:26:21.0201337Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-07T23:26:21.0201433Z               "line": 152
2026-06-07T23:26:21.0201606Z             },
2026-06-07T23:26:21.0201690Z             {
2026-06-07T23:26:21.0201809Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-07T23:26:21.0201902Z               "line": 221
2026-06-07T23:26:21.0201986Z             },
2026-06-07T23:26:21.0202072Z             {
2026-06-07T23:26:21.0202202Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-07T23:26:21.0202287Z               "line": 20
2026-06-07T23:26:21.0202381Z             },
2026-06-07T23:26:21.0202466Z             {
2026-06-07T23:26:21.0202581Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-07T23:26:21.0202674Z               "line": 222
2026-06-07T23:26:21.0202759Z             },
2026-06-07T23:26:21.0202846Z             {
2026-06-07T23:26:21.0202966Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-07T23:26:21.0203060Z               "line": 242
2026-06-07T23:26:21.0203146Z             },
2026-06-07T23:26:21.0203232Z             {
2026-06-07T23:26:21.0203346Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:21.0203442Z               "line": 625
2026-06-07T23:26:21.0203528Z             },
2026-06-07T23:26:21.0203609Z             {
2026-06-07T23:26:21.0203727Z               "path": "crates/spt-term/src/digest.rs",
2026-06-07T23:26:21.0203815Z               "line": 162
2026-06-07T23:26:21.0203900Z             },
2026-06-07T23:26:21.0203985Z             {
2026-06-07T23:26:21.0204095Z               "path": "crates/spt-term/src/digest.rs",
2026-06-07T23:26:21.0204191Z               "line": 206
2026-06-07T23:26:21.0204276Z             },
2026-06-07T23:26:21.0204362Z             {
2026-06-07T23:26:21.0204473Z               "path": "crates/spt-term/src/digest.rs",
2026-06-07T23:26:21.0204558Z               "line": 233
2026-06-07T23:26:21.0204648Z             },
2026-06-07T23:26:21.0204734Z             {
2026-06-07T23:26:21.0204839Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0204929Z               "line": 795
2026-06-07T23:26:21.0205020Z             }
2026-06-07T23:26:21.0205107Z           ]
2026-06-07T23:26:21.0205192Z         },
2026-06-07T23:26:21.0205276Z         "int": {
2026-06-07T23:26:21.0205371Z           "complete": true,
2026-06-07T23:26:21.0205464Z           "evidence": [
2026-06-07T23:26:21.0205544Z             {
2026-06-07T23:26:21.0205662Z               "path": "crates/spt-daemon/tests/digest.rs",
2026-06-07T23:26:21.0205754Z               "line": 18
2026-06-07T23:26:21.0205835Z             }
2026-06-07T23:26:21.0205925Z           ]
2026-06-07T23:26:21.0206006Z         },
2026-06-07T23:26:21.0206097Z         "unit": {
2026-06-07T23:26:21.0206188Z           "complete": true,
2026-06-07T23:26:21.0206277Z           "evidence": [
2026-06-07T23:26:21.0206365Z             {
2026-06-07T23:26:21.0206483Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-07T23:26:21.0206573Z               "line": 259
2026-06-07T23:26:21.0206654Z             },
2026-06-07T23:26:21.0206741Z             {
2026-06-07T23:26:21.0206855Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-07T23:26:21.0207023Z               "line": 277
2026-06-07T23:26:21.0207108Z             },
2026-06-07T23:26:21.0207194Z             {
2026-06-07T23:26:21.0209317Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-07T23:26:21.0209436Z               "line": 289
2026-06-07T23:26:21.0209541Z             },
2026-06-07T23:26:21.0209628Z             {
2026-06-07T23:26:21.0209760Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-07T23:26:21.0209851Z               "line": 304
2026-06-07T23:26:21.0209938Z             },
2026-06-07T23:26:21.0210026Z             {
2026-06-07T23:26:21.0210147Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-07T23:26:21.0210238Z               "line": 320
2026-06-07T23:26:21.0210459Z             },
2026-06-07T23:26:21.0210536Z             {
2026-06-07T23:26:21.0210715Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-07T23:26:21.0210800Z               "line": 346
2026-06-07T23:26:21.0211025Z             },
2026-06-07T23:26:21.0211110Z             {
2026-06-07T23:26:21.0211226Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-07T23:26:21.0211321Z               "line": 361
2026-06-07T23:26:21.0211402Z             },
2026-06-07T23:26:21.0211488Z             {
2026-06-07T23:26:21.0211602Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-07T23:26:21.0211692Z               "line": 391
2026-06-07T23:26:21.0211779Z             },
2026-06-07T23:26:21.0211860Z             {
2026-06-07T23:26:21.0211988Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-07T23:26:21.0212079Z               "line": 365
2026-06-07T23:26:21.0212166Z             },
2026-06-07T23:26:21.0212246Z             {
2026-06-07T23:26:21.0212355Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-07T23:26:21.0212452Z               "line": 382
2026-06-07T23:26:21.0212546Z             },
2026-06-07T23:26:21.0212646Z             {
2026-06-07T23:26:21.0212767Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-07T23:26:21.0212842Z               "line": 411
2026-06-07T23:26:21.0212927Z             },
2026-06-07T23:26:21.0213012Z             {
2026-06-07T23:26:21.0213146Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-07T23:26:21.0213239Z               "line": 428
2026-06-07T23:26:21.0213324Z             },
2026-06-07T23:26:21.0213406Z             {
2026-06-07T23:26:21.0213526Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:21.0213616Z               "line": 828
2026-06-07T23:26:21.0213701Z             },
2026-06-07T23:26:21.0213788Z             {
2026-06-07T23:26:21.0213911Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:21.0214007Z               "line": 835
2026-06-07T23:26:21.0214093Z             },
2026-06-07T23:26:21.0214178Z             {
2026-06-07T23:26:21.0214292Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:21.0214389Z               "line": 850
2026-06-07T23:26:21.0214479Z             },
2026-06-07T23:26:21.0214588Z             {
2026-06-07T23:26:21.0214704Z               "path": "crates/spt-term/src/digest.rs",
2026-06-07T23:26:21.0214793Z               "line": 420
2026-06-07T23:26:21.0214879Z             },
2026-06-07T23:26:21.0214966Z             {
2026-06-07T23:26:21.0215075Z               "path": "crates/spt-term/src/digest.rs",
2026-06-07T23:26:21.0215165Z               "line": 458
2026-06-07T23:26:21.0215256Z             },
2026-06-07T23:26:21.0215338Z             {
2026-06-07T23:26:21.0215451Z               "path": "crates/spt-term/src/digest.rs",
2026-06-07T23:26:21.0215552Z               "line": 471
2026-06-07T23:26:21.0215634Z             },
2026-06-07T23:26:21.0215728Z             {
2026-06-07T23:26:21.0215837Z               "path": "crates/spt-term/src/digest.rs",
2026-06-07T23:26:21.0215927Z               "line": 497
2026-06-07T23:26:21.0216014Z             },
2026-06-07T23:26:21.0216099Z             {
2026-06-07T23:26:21.0216208Z               "path": "crates/spt-term/src/digest.rs",
2026-06-07T23:26:21.0216300Z               "line": 524
2026-06-07T23:26:21.0216385Z             },
2026-06-07T23:26:21.0216471Z             {
2026-06-07T23:26:21.0216585Z               "path": "crates/spt-term/tests/digest.rs",
2026-06-07T23:26:21.0216681Z               "line": 32
2026-06-07T23:26:21.0216767Z             },
2026-06-07T23:26:21.0216852Z             {
2026-06-07T23:26:21.0217052Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0217138Z               "line": 5982
2026-06-07T23:26:21.0217224Z             }
2026-06-07T23:26:21.0217316Z           ]
2026-06-07T23:26:21.0217400Z         }
2026-06-07T23:26:21.0217486Z       }
2026-06-07T23:26:21.0217574Z     },
2026-06-07T23:26:21.0217749Z     {
2026-06-07T23:26:21.0217840Z       "id": "REQ-UPD-1",
2026-06-07T23:26:21.0217964Z       "title": "Peer-propagated update over P2P",
2026-06-07T23:26:21.0218048Z       "requiredStages": [
2026-06-07T23:26:21.0218222Z         "impl",
2026-06-07T23:26:21.0218321Z         "unit",
2026-06-07T23:26:21.0218415Z         "int"
2026-06-07T23:26:21.0218511Z       ],
2026-06-07T23:26:21.0218615Z       "stages": {
2026-06-07T23:26:21.0218708Z         "doc": {
2026-06-07T23:26:21.0218803Z           "complete": false,
2026-06-07T23:26:21.0218896Z           "evidence": []
2026-06-07T23:26:21.0218986Z         },
2026-06-07T23:26:21.0219075Z         "impl": {
2026-06-07T23:26:21.0219171Z           "complete": true,
2026-06-07T23:26:21.0219266Z           "evidence": [
2026-06-07T23:26:21.0219347Z             {
2026-06-07T23:26:21.0219477Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-07T23:26:21.0219572Z               "line": 28
2026-06-07T23:26:21.0219658Z             },
2026-06-07T23:26:21.0219748Z             {
2026-06-07T23:26:21.0219868Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-07T23:26:21.0219958Z               "line": 103
2026-06-07T23:26:21.0220043Z             },
2026-06-07T23:26:21.0220135Z             {
2026-06-07T23:26:21.0220258Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-07T23:26:21.0220344Z               "line": 341
2026-06-07T23:26:21.0220431Z             },
2026-06-07T23:26:21.0220517Z             {
2026-06-07T23:26:21.0220640Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-07T23:26:21.0220731Z               "line": 22
2026-06-07T23:26:21.0220818Z             },
2026-06-07T23:26:21.0220906Z             {
2026-06-07T23:26:21.0221020Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-07T23:26:21.0221111Z               "line": 117
2026-06-07T23:26:21.0221196Z             },
2026-06-07T23:26:21.0221280Z             {
2026-06-07T23:26:21.0221395Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-07T23:26:21.0221490Z               "line": 150
2026-06-07T23:26:21.0221575Z             },
2026-06-07T23:26:21.0221661Z             {
2026-06-07T23:26:21.0221777Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-07T23:26:21.0221867Z               "line": 207
2026-06-07T23:26:21.0221957Z             },
2026-06-07T23:26:21.0222039Z             {
2026-06-07T23:26:21.0222157Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-07T23:26:21.0222247Z               "line": 37
2026-06-07T23:26:21.0222334Z             }
2026-06-07T23:26:21.0222421Z           ]
2026-06-07T23:26:21.0222506Z         },
2026-06-07T23:26:21.0222596Z         "int": {
2026-06-07T23:26:21.0222692Z           "complete": true,
2026-06-07T23:26:21.0222782Z           "evidence": [
2026-06-07T23:26:21.0222868Z             {
2026-06-07T23:26:21.0222988Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-07T23:26:21.0223083Z               "line": 197
2026-06-07T23:26:21.0223173Z             },
2026-06-07T23:26:21.0223264Z             {
2026-06-07T23:26:21.0223384Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-07T23:26:21.0223472Z               "line": 985
2026-06-07T23:26:21.0223558Z             }
2026-06-07T23:26:21.0223644Z           ]
2026-06-07T23:26:21.0223734Z         },
2026-06-07T23:26:21.0223818Z         "unit": {
2026-06-07T23:26:21.0223913Z           "complete": true,
2026-06-07T23:26:21.0224005Z           "evidence": [
2026-06-07T23:26:21.0224090Z             {
2026-06-07T23:26:21.0224204Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-07T23:26:21.0224295Z               "line": 310
2026-06-07T23:26:21.0224381Z             },
2026-06-07T23:26:21.0224466Z             {
2026-06-07T23:26:21.0224581Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-07T23:26:21.0224672Z               "line": 333
2026-06-07T23:26:21.0224758Z             },
2026-06-07T23:26:21.0224843Z             {
2026-06-07T23:26:21.0225044Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-07T23:26:21.0225139Z               "line": 266
2026-06-07T23:26:21.0225225Z             },
2026-06-07T23:26:21.0225311Z             {
2026-06-07T23:26:21.0225425Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-07T23:26:21.0225579Z               "line": 124
2026-06-07T23:26:21.0225668Z             },
2026-06-07T23:26:21.0225749Z             {
2026-06-07T23:26:21.0225864Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-07T23:26:21.0225959Z               "line": 200
2026-06-07T23:26:21.0226039Z             }
2026-06-07T23:26:21.0226126Z           ]
2026-06-07T23:26:21.0226208Z         }
2026-06-07T23:26:21.0226293Z       }
2026-06-07T23:26:21.0226378Z     },
2026-06-07T23:26:21.0226463Z     {
2026-06-07T23:26:21.0226554Z       "id": "REQ-UPD-2",
2026-06-07T23:26:21.0226707Z       "title": "All binaries signature-verified before handoff",
2026-06-07T23:26:21.0226802Z       "requiredStages": [
2026-06-07T23:26:21.0226893Z         "impl",
2026-06-07T23:26:21.0227073Z         "unit"
2026-06-07T23:26:21.0227155Z       ],
2026-06-07T23:26:21.0227246Z       "stages": {
2026-06-07T23:26:21.0227341Z         "doc": {
2026-06-07T23:26:21.0227436Z           "complete": false,
2026-06-07T23:26:21.0227537Z           "evidence": []
2026-06-07T23:26:21.0227627Z         },
2026-06-07T23:26:21.0227717Z         "impl": {
2026-06-07T23:26:21.0227809Z           "complete": true,
2026-06-07T23:26:21.0227904Z           "evidence": [
2026-06-07T23:26:21.0227985Z             {
2026-06-07T23:26:21.0228109Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-07T23:26:21.0228209Z               "line": 342
2026-06-07T23:26:21.0228289Z             },
2026-06-07T23:26:21.0228375Z             {
2026-06-07T23:26:21.0228500Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-07T23:26:21.0228590Z               "line": 468
2026-06-07T23:26:21.0228676Z             },
2026-06-07T23:26:21.0228758Z             {
2026-06-07T23:26:21.0228890Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0228975Z               "line": 29
2026-06-07T23:26:21.0229061Z             },
2026-06-07T23:26:21.0229147Z             {
2026-06-07T23:26:21.0229269Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0229359Z               "line": 258
2026-06-07T23:26:21.0229441Z             },
2026-06-07T23:26:21.0229527Z             {
2026-06-07T23:26:21.0229640Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0229732Z               "line": 275
2026-06-07T23:26:21.0229818Z             },
2026-06-07T23:26:21.0229903Z             {
2026-06-07T23:26:21.0230017Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0230104Z               "line": 395
2026-06-07T23:26:21.0230194Z             },
2026-06-07T23:26:21.0230274Z             {
2026-06-07T23:26:21.0230390Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0230480Z               "line": 527
2026-06-07T23:26:21.0230566Z             },
2026-06-07T23:26:21.0230651Z             {
2026-06-07T23:26:21.0230766Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-07T23:26:21.0230857Z               "line": 155
2026-06-07T23:26:21.0230942Z             }
2026-06-07T23:26:21.0231029Z           ]
2026-06-07T23:26:21.0231114Z         },
2026-06-07T23:26:21.0231200Z         "int": {
2026-06-07T23:26:21.0231291Z           "complete": false,
2026-06-07T23:26:21.0231382Z           "evidence": []
2026-06-07T23:26:21.0231471Z         },
2026-06-07T23:26:21.0231556Z         "unit": {
2026-06-07T23:26:21.0231652Z           "complete": true,
2026-06-07T23:26:21.0231742Z           "evidence": [
2026-06-07T23:26:21.0231826Z             {
2026-06-07T23:26:21.0231945Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0232032Z               "line": 682
2026-06-07T23:26:21.0232117Z             },
2026-06-07T23:26:21.0232197Z             {
2026-06-07T23:26:21.0232413Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0232502Z               "line": 743
2026-06-07T23:26:21.0232589Z             },
2026-06-07T23:26:21.0232675Z             {
2026-06-07T23:26:21.0232789Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0232962Z               "line": 757
2026-06-07T23:26:21.0233046Z             },
2026-06-07T23:26:21.0233132Z             {
2026-06-07T23:26:21.0233247Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0233338Z               "line": 773
2026-06-07T23:26:21.0233428Z             },
2026-06-07T23:26:21.0233509Z             {
2026-06-07T23:26:21.0233620Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0233713Z               "line": 864
2026-06-07T23:26:21.0233800Z             },
2026-06-07T23:26:21.0233882Z             {
2026-06-07T23:26:21.0234005Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-07T23:26:21.0234100Z               "line": 412
2026-06-07T23:26:21.0234185Z             },
2026-06-07T23:26:21.0234271Z             {
2026-06-07T23:26:21.0234383Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-07T23:26:21.0234473Z               "line": 425
2026-06-07T23:26:21.0234565Z             },
2026-06-07T23:26:21.0234646Z             {
2026-06-07T23:26:21.0234773Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-07T23:26:21.0234860Z               "line": 399
2026-06-07T23:26:21.0234946Z             }
2026-06-07T23:26:21.0235031Z           ]
2026-06-07T23:26:21.0235117Z         }
2026-06-07T23:26:21.0235204Z       }
2026-06-07T23:26:21.0235284Z     },
2026-06-07T23:26:21.0235370Z     {
2026-06-07T23:26:21.0235461Z       "id": "REQ-UPD-3",
2026-06-07T23:26:21.0235637Z       "title": "No endpoint process terminates/suspends during self-update",
2026-06-07T23:26:21.0235732Z       "requiredStages": [
2026-06-07T23:26:21.0235824Z         "impl",
2026-06-07T23:26:21.0235909Z         "unit",
2026-06-07T23:26:21.0235999Z         "int"
2026-06-07T23:26:21.0236086Z       ],
2026-06-07T23:26:21.0236172Z       "stages": {
2026-06-07T23:26:21.0236261Z         "doc": {
2026-06-07T23:26:21.0236352Z           "complete": false,
2026-06-07T23:26:21.0236449Z           "evidence": []
2026-06-07T23:26:21.0236534Z         },
2026-06-07T23:26:21.0236619Z         "impl": {
2026-06-07T23:26:21.0236710Z           "complete": true,
2026-06-07T23:26:21.0236797Z           "evidence": [
2026-06-07T23:26:21.0236890Z             {
2026-06-07T23:26:21.0237100Z               "path": "crates/spt-daemon/src/applyhost.rs",
2026-06-07T23:26:21.0237191Z               "line": 39
2026-06-07T23:26:21.0237276Z             },
2026-06-07T23:26:21.0237362Z             {
2026-06-07T23:26:21.0237482Z               "path": "crates/spt-daemon/src/applyhost.rs",
2026-06-07T23:26:21.0237567Z               "line": 71
2026-06-07T23:26:21.0237657Z             },
2026-06-07T23:26:21.0237740Z             {
2026-06-07T23:26:21.0237854Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-07T23:26:21.0237949Z               "line": 26
2026-06-07T23:26:21.0238035Z             },
2026-06-07T23:26:21.0238121Z             {
2026-06-07T23:26:21.0238230Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-07T23:26:21.0238326Z               "line": 114
2026-06-07T23:26:21.0238412Z             },
2026-06-07T23:26:21.0238497Z             {
2026-06-07T23:26:21.0238606Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-07T23:26:21.0238694Z               "line": 246
2026-06-07T23:26:21.0238779Z             },
2026-06-07T23:26:21.0238864Z             {
2026-06-07T23:26:21.0238970Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0239060Z               "line": 1546
2026-06-07T23:26:21.0239150Z             }
2026-06-07T23:26:21.0239232Z           ]
2026-06-07T23:26:21.0239318Z         },
2026-06-07T23:26:21.0239404Z         "int": {
2026-06-07T23:26:21.0239493Z           "complete": true,
2026-06-07T23:26:21.0239697Z           "evidence": [
2026-06-07T23:26:21.0239782Z             {
2026-06-07T23:26:21.0239909Z               "path": "crates/spt-daemon/tests/brain_swap.rs",
2026-06-07T23:26:21.0239996Z               "line": 23
2026-06-07T23:26:21.0240082Z             }
2026-06-07T23:26:21.0240253Z           ]
2026-06-07T23:26:21.0240335Z         },
2026-06-07T23:26:21.0240421Z         "unit": {
2026-06-07T23:26:21.0240515Z           "complete": true,
2026-06-07T23:26:21.0240602Z           "evidence": [
2026-06-07T23:26:21.0240688Z             {
2026-06-07T23:26:21.0240801Z               "path": "crates/spt-daemon/src/applyhost.rs",
2026-06-07T23:26:21.0240892Z               "line": 393
2026-06-07T23:26:21.0240979Z             },
2026-06-07T23:26:21.0241064Z             {
2026-06-07T23:26:21.0241178Z               "path": "crates/spt-daemon/src/applyhost.rs",
2026-06-07T23:26:21.0241274Z               "line": 461
2026-06-07T23:26:21.0241364Z             },
2026-06-07T23:26:21.0241445Z             {
2026-06-07T23:26:21.0241566Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-07T23:26:21.0241651Z               "line": 271
2026-06-07T23:26:21.0241741Z             },
2026-06-07T23:26:21.0241822Z             {
2026-06-07T23:26:21.0241938Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-07T23:26:21.0242031Z               "line": 295
2026-06-07T23:26:21.0242116Z             },
2026-06-07T23:26:21.0242198Z             {
2026-06-07T23:26:21.0242311Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-07T23:26:21.0242395Z               "line": 316
2026-06-07T23:26:21.0242476Z             },
2026-06-07T23:26:21.0242568Z             {
2026-06-07T23:26:21.0242686Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-07T23:26:21.0242771Z               "line": 332
2026-06-07T23:26:21.0242863Z             }
2026-06-07T23:26:21.0242944Z           ]
2026-06-07T23:26:21.0243030Z         }
2026-06-07T23:26:21.0243111Z       }
2026-06-07T23:26:21.0243193Z     },
2026-06-07T23:26:21.0243282Z     {
2026-06-07T23:26:21.0243372Z       "id": "REQ-UPD-4",
2026-06-07T23:26:21.0243550Z       "title": "Update gated on user confirmation by default; opt-in full-auto",
2026-06-07T23:26:21.0243645Z       "requiredStages": [
2026-06-07T23:26:21.0243735Z         "impl",
2026-06-07T23:26:21.0243822Z         "unit"
2026-06-07T23:26:21.0243907Z       ],
2026-06-07T23:26:21.0243998Z       "stages": {
2026-06-07T23:26:21.0244079Z         "doc": {
2026-06-07T23:26:21.0244170Z           "complete": false,
2026-06-07T23:26:21.0244259Z           "evidence": []
2026-06-07T23:26:21.0244350Z         },
2026-06-07T23:26:21.0244433Z         "impl": {
2026-06-07T23:26:21.0244523Z           "complete": true,
2026-06-07T23:26:21.0244616Z           "evidence": [
2026-06-07T23:26:21.0244702Z             {
2026-06-07T23:26:21.0244817Z               "path": "crates/spt-daemon/src/applyhost.rs",
2026-06-07T23:26:21.0244905Z               "line": 40
2026-06-07T23:26:21.0244991Z             },
2026-06-07T23:26:21.0245072Z             {
2026-06-07T23:26:21.0245197Z               "path": "crates/spt-daemon/src/applyhost.rs",
2026-06-07T23:26:21.0245281Z               "line": 72
2026-06-07T23:26:21.0245367Z             },
2026-06-07T23:26:21.0245450Z             {
2026-06-07T23:26:21.0245563Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-07T23:26:21.0245653Z               "line": 23
2026-06-07T23:26:21.0245735Z             },
2026-06-07T23:26:21.0245825Z             {
2026-06-07T23:26:21.0245939Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-07T23:26:21.0246021Z               "line": 56
2026-06-07T23:26:21.0246107Z             },
2026-06-07T23:26:21.0246188Z             {
2026-06-07T23:26:21.0246302Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-07T23:26:21.0246389Z               "line": 77
2026-06-07T23:26:21.0246473Z             },
2026-06-07T23:26:21.0246559Z             {
2026-06-07T23:26:21.0246670Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-07T23:26:21.0246831Z               "line": 184
2026-06-07T23:26:21.0246917Z             },
2026-06-07T23:26:21.0247094Z             {
2026-06-07T23:26:21.0247207Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-07T23:26:21.0247295Z               "line": 101
2026-06-07T23:26:21.0247469Z             },
2026-06-07T23:26:21.0247550Z             {
2026-06-07T23:26:21.0247665Z               "path": "crates/spt-store/src/info.rs",
2026-06-07T23:26:21.0247751Z               "line": 170
2026-06-07T23:26:21.0247836Z             },
2026-06-07T23:26:21.0247922Z             {
2026-06-07T23:26:21.0248023Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0248113Z               "line": 1545
2026-06-07T23:26:21.0248198Z             }
2026-06-07T23:26:21.0248280Z           ]
2026-06-07T23:26:21.0248361Z         },
2026-06-07T23:26:21.0248451Z         "int": {
2026-06-07T23:26:21.0248541Z           "complete": false,
2026-06-07T23:26:21.0248639Z           "evidence": []
2026-06-07T23:26:21.0248728Z         },
2026-06-07T23:26:21.0248814Z         "unit": {
2026-06-07T23:26:21.0248905Z           "complete": true,
2026-06-07T23:26:21.0248996Z           "evidence": [
2026-06-07T23:26:21.0249081Z             {
2026-06-07T23:26:21.0249205Z               "path": "crates/spt-daemon/src/applyhost.rs",
2026-06-07T23:26:21.0249296Z               "line": 389
2026-06-07T23:26:21.0249381Z             },
2026-06-07T23:26:21.0249462Z             {
2026-06-07T23:26:21.0249583Z               "path": "crates/spt-daemon/src/applyhost.rs",
2026-06-07T23:26:21.0249677Z               "line": 514
2026-06-07T23:26:21.0249777Z             },
2026-06-07T23:26:21.0249864Z             {
2026-06-07T23:26:21.0249983Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-07T23:26:21.0250072Z               "line": 384
2026-06-07T23:26:21.0250152Z             },
2026-06-07T23:26:21.0250243Z             {
2026-06-07T23:26:21.0250356Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-07T23:26:21.0250445Z               "line": 102
2026-06-07T23:26:21.0250537Z             },
2026-06-07T23:26:21.0250618Z             {
2026-06-07T23:26:21.0250732Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-07T23:26:21.0250818Z               "line": 123
2026-06-07T23:26:21.0250914Z             },
2026-06-07T23:26:21.0250994Z             {
2026-06-07T23:26:21.0251109Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-07T23:26:21.0251200Z               "line": 142
2026-06-07T23:26:21.0251286Z             },
2026-06-07T23:26:21.0251371Z             {
2026-06-07T23:26:21.0251477Z               "path": "crates/spt-store/src/info.rs",
2026-06-07T23:26:21.0251567Z               "line": 386
2026-06-07T23:26:21.0251652Z             },
2026-06-07T23:26:21.0251733Z             {
2026-06-07T23:26:21.0251849Z               "path": "crates/spt-store/src/perch.rs",
2026-06-07T23:26:21.0251938Z               "line": 538
2026-06-07T23:26:21.0252020Z             },
2026-06-07T23:26:21.0252106Z             {
2026-06-07T23:26:21.0252215Z               "path": "crates/spt/src/cli.rs",
2026-06-07T23:26:21.0252301Z               "line": 4831
2026-06-07T23:26:21.0252387Z             }
2026-06-07T23:26:21.0252474Z           ]
2026-06-07T23:26:21.0252558Z         }
2026-06-07T23:26:21.0252643Z       }
2026-06-07T23:26:21.0252724Z     },
2026-06-07T23:26:21.0252810Z     {
2026-06-07T23:26:21.0252899Z       "id": "REQ-UPD-5",
2026-06-07T23:26:21.0253041Z       "title": "spt-core ripple-updates registered adapters",
2026-06-07T23:26:21.0253138Z       "requiredStages": [
2026-06-07T23:26:21.0253223Z         "impl",
2026-06-07T23:26:21.0253308Z         "unit"
2026-06-07T23:26:21.0253390Z       ],
2026-06-07T23:26:21.0253476Z       "stages": {
2026-06-07T23:26:21.0253561Z         "doc": {
2026-06-07T23:26:21.0253651Z           "complete": false,
2026-06-07T23:26:21.0253743Z           "evidence": []
2026-06-07T23:26:21.0253828Z         },
2026-06-07T23:26:21.0253914Z         "impl": {
2026-06-07T23:26:21.0254004Z           "complete": true,
2026-06-07T23:26:21.0254201Z           "evidence": [
2026-06-07T23:26:21.0254281Z             {
2026-06-07T23:26:21.0254415Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-07T23:26:21.0254505Z               "line": 27
2026-06-07T23:26:21.0254648Z             },
2026-06-07T23:26:21.0254735Z             {
2026-06-07T23:26:21.0254858Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-07T23:26:21.0254954Z               "line": 82
2026-06-07T23:26:21.0255036Z             },
2026-06-07T23:26:21.0255121Z             {
2026-06-07T23:26:21.0255248Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-07T23:26:21.0255338Z               "line": 134
2026-06-07T23:26:21.0255424Z             },
2026-06-07T23:26:21.0255508Z             {
2026-06-07T23:26:21.0255622Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0255714Z               "line": 479
2026-06-07T23:26:21.0255795Z             },
2026-06-07T23:26:21.0255880Z             {
2026-06-07T23:26:21.0256000Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0256086Z               "line": 515
2026-06-07T23:26:21.0256170Z             }
2026-06-07T23:26:21.0256257Z           ]
2026-06-07T23:26:21.0256343Z         },
2026-06-07T23:26:21.0256429Z         "int": {
2026-06-07T23:26:21.0256523Z           "complete": false,
2026-06-07T23:26:21.0256610Z           "evidence": []
2026-06-07T23:26:21.0256695Z         },
2026-06-07T23:26:21.0256781Z         "unit": {
2026-06-07T23:26:21.0256876Z           "complete": true,
2026-06-07T23:26:21.0257048Z           "evidence": [
2026-06-07T23:26:21.0257134Z             {
2026-06-07T23:26:21.0257254Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-07T23:26:21.0257344Z               "line": 231
2026-06-07T23:26:21.0257430Z             },
2026-06-07T23:26:21.0257515Z             {
2026-06-07T23:26:21.0257636Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-07T23:26:21.0257729Z               "line": 245
2026-06-07T23:26:21.0257816Z             },
2026-06-07T23:26:21.0257898Z             {
2026-06-07T23:26:21.0258020Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-07T23:26:21.0258110Z               "line": 259
2026-06-07T23:26:21.0258196Z             },
2026-06-07T23:26:21.0258283Z             {
2026-06-07T23:26:21.0258406Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-07T23:26:21.0258497Z               "line": 273
2026-06-07T23:26:21.0258583Z             },
2026-06-07T23:26:21.0258664Z             {
2026-06-07T23:26:21.0258787Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-07T23:26:21.0258875Z               "line": 307
2026-06-07T23:26:21.0258960Z             },
2026-06-07T23:26:21.0259045Z             {
2026-06-07T23:26:21.0259160Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-07T23:26:21.0259245Z               "line": 792
2026-06-07T23:26:21.0259331Z             }
2026-06-07T23:26:21.0259417Z           ]
2026-06-07T23:26:21.0259504Z         }
2026-06-07T23:26:21.0259588Z       }
2026-06-07T23:26:21.0259674Z     },
2026-06-07T23:26:21.0259755Z     {
2026-06-07T23:26:21.0259852Z       "id": "REQ-UPD-6",
2026-06-07T23:26:21.0260608Z       "title": "Platform-targeted update sets and debug rollout: signed multi-platform update metadata, recipient platform selection, channel-scoped monotonic counters, debug-channel opt-in via release-key overlay, local staging plus pull-based peer propagation, and maintainer-only convergence tooling (ADR-0016)",
2026-06-07T23:26:21.0260708Z       "requiredStages": [
2026-06-07T23:26:21.0260794Z         "doc",
2026-06-07T23:26:21.0260878Z         "impl",
2026-06-07T23:26:21.0260963Z         "unit",
2026-06-07T23:26:21.0261049Z         "int"
2026-06-07T23:26:21.0261131Z       ],
2026-06-07T23:26:21.0261217Z       "stages": {
2026-06-07T23:26:21.0261306Z         "doc": {
2026-06-07T23:26:21.0261397Z           "complete": true,
2026-06-07T23:26:21.0261583Z           "evidence": [
2026-06-07T23:26:21.0261669Z             {
2026-06-07T23:26:21.0261793Z               "path": "docs/DEBUG-CONVERGE-PLAN.md",
2026-06-07T23:26:21.0261879Z               "line": 3
2026-06-07T23:26:21.0261964Z             },
2026-06-07T23:26:21.0262141Z             {
2026-06-07T23:26:21.0262250Z               "path": "docs/DEBUG-ROLLOUT.md",
2026-06-07T23:26:21.0262337Z               "line": 3
2026-06-07T23:26:21.0262423Z             },
2026-06-07T23:26:21.0262503Z             {
2026-06-07T23:26:21.0262652Z               "path": "docs/adr/0016-platform-targeted-update-sets.md",
2026-06-07T23:26:21.0262743Z               "line": 3
2026-06-07T23:26:21.0262827Z             }
2026-06-07T23:26:21.0262909Z           ]
2026-06-07T23:26:21.0262991Z         },
2026-06-07T23:26:21.0263076Z         "impl": {
2026-06-07T23:26:21.0263170Z           "complete": true,
2026-06-07T23:26:21.0263260Z           "evidence": [
2026-06-07T23:26:21.0263342Z             {
2026-06-07T23:26:21.0263463Z               "path": "crates/spt-daemon/src/applyhost.rs",
2026-06-07T23:26:21.0263563Z               "line": 143
2026-06-07T23:26:21.0263645Z             },
2026-06-07T23:26:21.0263726Z             {
2026-06-07T23:26:21.0263849Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:21.0263940Z               "line": 457
2026-06-07T23:26:21.0264026Z             },
2026-06-07T23:26:21.0264107Z             {
2026-06-07T23:26:21.0264226Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-07T23:26:21.0264313Z               "line": 510
2026-06-07T23:26:21.0264398Z             },
2026-06-07T23:26:21.0264479Z             {
2026-06-07T23:26:21.0264599Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-07T23:26:21.0264684Z               "line": 69
2026-06-07T23:26:21.0264770Z             },
2026-06-07T23:26:21.0264855Z             {
2026-06-07T23:26:21.0264975Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-07T23:26:21.0265065Z               "line": 132
2026-06-07T23:26:21.0265151Z             },
2026-06-07T23:26:21.0265238Z             {
2026-06-07T23:26:21.0265356Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-07T23:26:21.0265447Z               "line": 242
2026-06-07T23:26:21.0265533Z             },
2026-06-07T23:26:21.0265624Z             {
2026-06-07T23:26:21.0265737Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-07T23:26:21.0265827Z               "line": 398
2026-06-07T23:26:21.0265918Z             },
2026-06-07T23:26:21.0266002Z             {
2026-06-07T23:26:21.0266120Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-07T23:26:21.0266211Z               "line": 526
2026-06-07T23:26:21.0266293Z             },
2026-06-07T23:26:21.0266378Z             {
2026-06-07T23:26:21.0266492Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-07T23:26:21.0266584Z               "line": 540
2026-06-07T23:26:21.0266674Z             },
2026-06-07T23:26:21.0266759Z             {
2026-06-07T23:26:21.0266880Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-07T23:26:21.0267050Z               "line": 595
2026-06-07T23:26:21.0267136Z             },
2026-06-07T23:26:21.0267223Z             {
2026-06-07T23:26:21.0267342Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-07T23:26:21.0267432Z               "line": 626
2026-06-07T23:26:21.0267514Z             },
2026-06-07T23:26:21.0267603Z             {
2026-06-07T23:26:21.0267718Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-07T23:26:21.0267805Z               "line": 41
2026-06-07T23:26:21.0267886Z             },
2026-06-07T23:26:21.0267970Z             {
2026-06-07T23:26:21.0268085Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-07T23:26:21.0268177Z               "line": 99
2026-06-07T23:26:21.0268261Z             },
2026-06-07T23:26:21.0268342Z             {
2026-06-07T23:26:21.0268453Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-07T23:26:21.0268661Z               "line": 130
2026-06-07T23:26:21.0268747Z             },
2026-06-07T23:26:21.0268833Z             {
2026-06-07T23:26:21.0268947Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-07T23:26:21.0269037Z               "line": 159
2026-06-07T23:26:21.0269201Z             },
2026-06-07T23:26:21.0269290Z             {
2026-06-07T23:26:21.0269405Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-07T23:26:21.0269510Z               "line": 190
2026-06-07T23:26:21.0269595Z             },
2026-06-07T23:26:21.0269676Z             {
2026-06-07T23:26:21.0269792Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-07T23:26:21.0269877Z               "line": 213
2026-06-07T23:26:21.0269962Z             },
2026-06-07T23:26:21.0270049Z             {
2026-06-07T23:26:21.0270186Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-07T23:26:21.0270277Z               "line": 231
2026-06-07T23:26:21.0270359Z             },
2026-06-07T23:26:21.0270449Z             {
2026-06-07T23:26:21.0270558Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-07T23:26:21.0270650Z               "line": 241
2026-06-07T23:26:21.0270737Z             },
2026-06-07T23:26:21.0270816Z             {
2026-06-07T23:26:21.0270931Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-07T23:26:21.0271023Z               "line": 253
2026-06-07T23:26:21.0271107Z             },
2026-06-07T23:26:21.0271187Z             {
2026-06-07T23:26:21.0271302Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-07T23:26:21.0271397Z               "line": 263
2026-06-07T23:26:21.0271476Z             },
2026-06-07T23:26:21.0271561Z             {
2026-06-07T23:26:21.0271677Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0271767Z               "line": 87
2026-06-07T23:26:21.0271852Z             },
2026-06-07T23:26:21.0271934Z             {
2026-06-07T23:26:21.0272053Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0272143Z               "line": 113
2026-06-07T23:26:21.0272233Z             },
2026-06-07T23:26:21.0272316Z             {
2026-06-07T23:26:21.0272429Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0272524Z               "line": 128
2026-06-07T23:26:21.0272612Z             },
2026-06-07T23:26:21.0272701Z             {
2026-06-07T23:26:21.0272810Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0272897Z               "line": 149
2026-06-07T23:26:21.0272988Z             },
2026-06-07T23:26:21.0274901Z             {
2026-06-07T23:26:21.0275044Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0275134Z               "line": 161
2026-06-07T23:26:21.0275221Z             },
2026-06-07T23:26:21.0275306Z             {
2026-06-07T23:26:21.0275425Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0275512Z               "line": 172
2026-06-07T23:26:21.0275597Z             },
2026-06-07T23:26:21.0275692Z             {
2026-06-07T23:26:21.0275813Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0275902Z               "line": 438
2026-06-07T23:26:21.0275988Z             },
2026-06-07T23:26:21.0276069Z             {
2026-06-07T23:26:21.0276194Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0276288Z               "line": 542
2026-06-07T23:26:21.0276368Z             },
2026-06-07T23:26:21.0276454Z             {
2026-06-07T23:26:21.0276576Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-07T23:26:21.0276666Z               "line": 171
2026-06-07T23:26:21.0276752Z             },
2026-06-07T23:26:21.0276834Z             {
2026-06-07T23:26:21.0277052Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-07T23:26:21.0277144Z               "line": 65
2026-06-07T23:26:21.0277225Z             },
2026-06-07T23:26:21.0277309Z             {
2026-06-07T23:26:21.0277420Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-07T23:26:21.0277638Z               "line": 71
2026-06-07T23:26:21.0277721Z             },
2026-06-07T23:26:21.0277807Z             {
2026-06-07T23:26:21.0277920Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-07T23:26:21.0278093Z               "line": 77
2026-06-07T23:26:21.0278182Z             },
2026-06-07T23:26:21.0278263Z             {
2026-06-07T23:26:21.0278374Z               "path": "crates/xtask/src/main.rs",
2026-06-07T23:26:21.0278465Z               "line": 649
2026-06-07T23:26:21.0278545Z             },
2026-06-07T23:26:21.0278631Z             {
2026-06-07T23:26:21.0278732Z               "path": "crates/xtask/src/main.rs",
2026-06-07T23:26:21.0278821Z               "line": 666
2026-06-07T23:26:21.0278907Z             },
2026-06-07T23:26:21.0278990Z             {
2026-06-07T23:26:21.0279094Z               "path": "crates/xtask/src/main.rs",
2026-06-07T23:26:21.0279183Z               "line": 709
2026-06-07T23:26:21.0279264Z             },
2026-06-07T23:26:21.0279355Z             {
2026-06-07T23:26:21.0279460Z               "path": "crates/xtask/src/main.rs",
2026-06-07T23:26:21.0279545Z               "line": 849
2026-06-07T23:26:21.0279632Z             },
2026-06-07T23:26:21.0279713Z             {
2026-06-07T23:26:21.0279826Z               "path": "crates/xtask/src/main.rs",
2026-06-07T23:26:21.0279912Z               "line": 996
2026-06-07T23:26:21.0279999Z             }
2026-06-07T23:26:21.0280080Z           ]
2026-06-07T23:26:21.0280165Z         },
2026-06-07T23:26:21.0280246Z         "int": {
2026-06-07T23:26:21.0280343Z           "complete": true,
2026-06-07T23:26:21.0280433Z           "evidence": [
2026-06-07T23:26:21.0280518Z             {
2026-06-07T23:26:21.0280643Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-07T23:26:21.0280732Z               "line": 558
2026-06-07T23:26:21.0280813Z             },
2026-06-07T23:26:21.0280900Z             {
2026-06-07T23:26:21.0281014Z               "path": "docs/DEBUG-CONVERGE-PLAN.md",
2026-06-07T23:26:21.0281109Z               "line": 135
2026-06-07T23:26:21.0281195Z             }
2026-06-07T23:26:21.0281277Z           ]
2026-06-07T23:26:21.0281362Z         },
2026-06-07T23:26:21.0281447Z         "unit": {
2026-06-07T23:26:21.0281540Z           "complete": true,
2026-06-07T23:26:21.0281630Z           "evidence": [
2026-06-07T23:26:21.0281714Z             {
2026-06-07T23:26:21.0281837Z               "path": "crates/spt-daemon/src/applyhost.rs",
2026-06-07T23:26:21.0281924Z               "line": 434
2026-06-07T23:26:21.0282013Z             },
2026-06-07T23:26:21.0282093Z             {
2026-06-07T23:26:21.0282217Z               "path": "crates/spt-daemon/src/applyhost.rs",
2026-06-07T23:26:21.0282303Z               "line": 483
2026-06-07T23:26:21.0282388Z             },
2026-06-07T23:26:21.0282479Z             {
2026-06-07T23:26:21.0282594Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-07T23:26:21.0282684Z               "line": 688
2026-06-07T23:26:21.0282765Z             },
2026-06-07T23:26:21.0282857Z             {
2026-06-07T23:26:21.0282970Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-07T23:26:21.0283061Z               "line": 355
2026-06-07T23:26:21.0283147Z             },
2026-06-07T23:26:21.0283233Z             {
2026-06-07T23:26:21.0283347Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-07T23:26:21.0283438Z               "line": 392
2026-06-07T23:26:21.0283520Z             },
2026-06-07T23:26:21.0283604Z             {
2026-06-07T23:26:21.0283719Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0283806Z               "line": 879
2026-06-07T23:26:21.0283891Z             },
2026-06-07T23:26:21.0283972Z             {
2026-06-07T23:26:21.0284087Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0284178Z               "line": 901
2026-06-07T23:26:21.0284262Z             },
2026-06-07T23:26:21.0284347Z             {
2026-06-07T23:26:21.0284457Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0284622Z               "line": 918
2026-06-07T23:26:21.0284707Z             },
2026-06-07T23:26:21.0284789Z             {
2026-06-07T23:26:21.0284903Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0285060Z               "line": 933
2026-06-07T23:26:21.0285142Z             },
2026-06-07T23:26:21.0285232Z             {
2026-06-07T23:26:21.0285346Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-07T23:26:21.0285433Z               "line": 959
2026-06-07T23:26:21.0285518Z             },
2026-06-07T23:26:21.0285604Z             {
2026-06-07T23:26:21.0285719Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-07T23:26:21.0285809Z               "line": 455
2026-06-07T23:26:21.0285890Z             },
2026-06-07T23:26:21.0285975Z             {
2026-06-07T23:26:21.0286095Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-07T23:26:21.0286185Z               "line": 327
2026-06-07T23:26:21.0286271Z             },
2026-06-07T23:26:21.0286363Z             {
2026-06-07T23:26:21.0286467Z               "path": "crates/xtask/src/main.rs",
2026-06-07T23:26:21.0286557Z               "line": 1125
2026-06-07T23:26:21.0286639Z             },
2026-06-07T23:26:21.0286730Z             {
2026-06-07T23:26:21.0286838Z               "path": "docs/DEBUG-CONVERGE-PLAN.md",
2026-06-07T23:26:21.0286928Z               "line": 130
2026-06-07T23:26:21.0287108Z             }
2026-06-07T23:26:21.0287193Z           ]
2026-06-07T23:26:21.0287279Z         }
2026-06-07T23:26:21.0287360Z       }
2026-06-07T23:26:21.0287442Z     }
2026-06-07T23:26:21.0287522Z   ],
2026-06-07T23:26:21.0287612Z   "findings": []
2026-06-07T23:26:21.0287699Z }
